Author

Topic: [ANN][NOMP] Pool operators do you use NOMP or thinking about it, check this out (Read 3994 times)

hero member
Activity: 785
Merit: 500
BURST got Smart Contracts (AT)
Do you know how to import it to Libre Office?
hero member
Activity: 630
Merit: 500
I'm having trouble setting up NOMP

Here is output from node init.js

Code:
2014-08-07 05:40:57 [POSIX]     [Connection Limit] (Safe to ignore) POSIX module not installed and resource (connection)

limit was not raised
2014-08-07 05:40:57 [Master]    [CLI] CLI listening on port 17117
2014-08-07 05:40:58 [Master]    [PoolSpawner] Spawned 1 pool(s) on 2 thread(s)
2014-08-07 05:41:00 [Payments]  [diamondcoin] Payment processing setup to run every 600 second(s) with daemon

([email protected]:17772) and redis (127.0.0.1:6379)                                                                           

                                         
2014-08-07 05:41:00 [Payments]  [diamondcoin] Finished interval - time spent: 17ms total, 5ms redis, 10ms daemon RPC
2014-08-07 05:41:00 [Switching] [Setup] (Thread 1) Loading last proxy state from redis
2014-08-07 05:41:00 [Pool]      [diamondcoin] (Thread 1) Share processing setup with redis (127.0.0.1:6379)
2014-08-07 05:41:00 [Switching] [Setup] (Thread 1) Switching "switch1" listening for groestl on port 3333 into diamondcoin
2014-08-07 05:41:00 [Website]   [Server] Website started on 127.0.0.1:8080
2014-08-07 05:41:00 [Stats]     [Global] error with getting global stats [{},{}]
2014-08-07 05:41:00 [Stats]     [Global] error getting all stats[{},{}]
2014-08-07 05:41:00 [Pool]      [diamondcoin] (Thread 1) Stratum Pool Server Started for diamondcoin [DMD] {groestl}
2014-08-07 05:41:00 [Switching] [Setup] (groestl) Setting proxy difficulties after pool start
2014-08-07 05:41:00 [Switching] [Setup] (Thread 2) Loading last proxy state from redis
2014-08-07 05:41:00 [Pool]      [diamondcoin] (Thread 2) Share processing setup with redis (127.0.0.1:6379)
2014-08-07 05:41:00 [Switching] [Setup] (Thread 2) Switching "switch1" listening for groestl on port 3333 into diamondcoin
2014-08-07 05:41:00 [Pool]      [diamondcoin] (Thread 2) Stratum Pool Server Started for diamondcoin [DMD] {groestl}
2014-08-07 05:41:00 [Switching] [Setup] (groestl) Setting proxy difficulties after pool start
2014-08-07 05:41:30 [Pool]      [diamondcoin] (Thread 1) Authorized dE1xgAEwfA3BsxEpXSBTrqiYbrEUyZwwKg:x [10.42.0.99]
2014-08-07 05:41:55 [Pool]      [diamondcoin] (Thread 1) No new blocks for 55 seconds - updating transactions &

rebroadcasting work
2014-08-07 05:41:55 [Pool]      [diamondcoin] (Thread 2) No new blocks for 55 seconds - updating transactions &

rebroadcasting work
2014-08-07 05:41:58 [Stats]     [Global] error with getting global stats [{},{}]
2014-08-07 05:41:58 [Stats]     [Global] error getting all stats[{},{}]
2014-08-07 05:42:05 [Pool]      [diamondcoin] (Thread 2) Block notification via RPC polling
2014-08-07 05:42:05 [Pool]      [diamondcoin] (Thread 1) Block notification via RPC polling
2014-08-07 05:42:50 [Pool]      [diamondcoin] (Thread 1) Share accepted at diff 0.00390625/2.42240273 by

dE1xgAEwfA3BsxEpXSBTrqiYbrEUyZwwKg [10.42.0.99]
2014-08-07 05:42:50 [Pool]      [diamondcoin] (Thread 1) Error with share processor multi [{},{},{},{}]
2014-08-07 05:42:55 [Pool]      [diamondcoin] (Thread 1) Share accepted at diff 0.00390625/2.59897940 by

dE1xgAEwfA3BsxEpXSBTrqiYbrEUyZwwKg [10.42.0.99]
2014-08-07 05:42:55 [Pool]      [diamondcoin] (Thread 1) Error with share processor multi [{},{},{},{}]
2014-08-07 05:42:55 [Pool]      [diamondcoin] (Thread 1) Share accepted at diff 0.00390625/20.79394799 by

dE1xgAEwfA3BsxEpXSBTrqiYbrEUyZwwKg [10.42.0.99]
2014-08-07 05:42:55 [Pool]      [diamondcoin] (Thread 1) Error with share processor multi [{},{},{},{}]
2014-08-07 05:42:56 [Pool]      [diamondcoin] (Thread 1) Share accepted at diff 0.00390625/1.06624046 by

dE1xgAEwfA3BsxEpXSBTrqiYbrEUyZwwKg [10.42.0.99]
2014-08-07 05:42:56 [Pool]      [diamondcoin] (Thread 1) Error with share processor multi [{},{},{},{}]
2014-08-07 05:42:56 [Pool]      [diamondcoin] (Thread 1) Share accepted at diff 0.00390625/18.78279015 by

dE1xgAEwfA3BsxEpXSBTrqiYbrEUyZwwKg [10.42.0.99]
2014-08-07 05:42:56 [Pool]      [diamondcoin] (Thread 1) Error with share processor multi [{},{},{},{}]
2014-08-07 05:42:57 [Pool]      [diamondcoin] (Thread 1) Share accepted at diff 0.00390625/1.00480109 by

dE1xgAEwfA3BsxEpXSBTrqiYbrEUyZwwKg [10.42.0.99]
2014-08-07 05:42:57 [Pool]      [diamondcoin] (Thread 1) Error with share processor multi [{},{},{},{}]
2014-08-07 05:42:58 [Stats]     [Global] error with getting global stats [{},{}]
2014-08-07 05:42:58 [Stats]     [Global] error getting all stats[{},{}]
2014-08-07 05:42:59 [Pool]      [diamondcoin] (Thread 1) Share accepted at diff 0.00390625/1.63783715 by

dE1xgAEwfA3BsxEpXSBTrqiYbrEUyZwwKg [10.42.0.99]
2014-08-07 05:42:59 [Pool]      [diamondcoin] (Thread 1) Error with share processor multi [{},{},{},{}]
2014-08-07 05:43:00 [Pool]      [diamondcoin] (Thread 1) No new blocks for 55 seconds - updating transactions &

rebroadcasting work
2014-08-07 05:43:00 [Pool]      [diamondcoin] (Thread 2) No new blocks for 55 seconds - updating transactions &

rebroadcasting work
2014-08-07 05:43:00 [Pool]      [diamondcoin] (Thread 1) Share accepted at diff 0.00390625/1.37537113 by

dE1xgAEwfA3BsxEpXSBTrqiYbrEUyZwwKg [10.42.0.99]
2014-08-07 05:43:00 [Pool]      [diamondcoin] (Thread 1) Error with share processor multi [{},{},{},{}]
2014-08-07 05:43:00 [Pool]      [diamondcoin] (Thread 1) Share accepted at diff 0.00390625/2.09557893 by

dE1xgAEwfA3BsxEpXSBTrqiYbrEUyZwwKg [10.42.0.99]
2014-08-07 05:43:00 [Pool]      [diamondcoin] (Thread 1) Error with share processor multi [{},{},{},{}]
2014-08-07 05:43:04 [Pool]      [diamondcoin] (Thread 1) Share accepted at diff 0.00390625/1.46301492 by

dE1xgAEwfA3BsxEpXSBTrqiYbrEUyZwwKg [10.42.0.99]
2014-08-07 05:43:04 [Pool]      [diamondcoin] (Thread 1) Error with share processor multi [{},{},{},{}]
2014-08-07 05:43:05 [Pool]      [diamondcoin] (Thread 1) Share accepted at diff 0.00390625/1.25386032 by

dE1xgAEwfA3BsxEpXSBTrqiYbrEUyZwwKg [10.42.0.99]
2014-08-07 05:43:05 [Pool]      [diamondcoin] (Thread 1) Error with share processor multi [{},{},{},{}]
2014-08-07 05:43:06 [Pool]      [diamondcoin] (Thread 1) Share accepted at diff 0.00390625/156.97057046 by

dE1xgAEwfA3BsxEpXSBTrqiYbrEUyZwwKg [10.42.0.99]
2014-08-07 05:43:06 [Pool]      [diamondcoin] (Thread 1) Error with share processor multi [{},{},{},{}]

Here is config.json
Code:
{
    "logLevel": "debug",
    "logColors": true,

    "cliPort": 17117,

    "clustering": {
        "enabled": true,
        "forks": "auto"
    },

    "defaultPoolConfigs": {
        "blockRefreshInterval": 1000,
        "jobRebroadcastTimeout": 55,
        "connectionTimeout": 600,
        "emitInvalidBlockHashes": false,
        "validateWorkerUsername": true,
        "tcpProxyProtocol": false,
        "banning": {
            "enabled": true,
            "time": 600,
            "invalidPercent": 50,
            "checkThreshold": 500,
            "purgeInterval": 300
        },
        "redis": {
            "host": "127.0.0.1",
            "port": 6379
        }
    },

    "website": {
        "enabled": true,
        "host": "127.0.0.1",
        "port": 8080,
        "stratumHost": "bogus.ddns.net",
        "stats": {
            "updateInterval": 60,
            "historicalRetention": 43200,
            "hashrateWindow": 300
        },
        "adminCenter": {
            "enabled": true,
            "password": "password1bogus"
        }
    },

    "redis": {
        "host": "127.0.0.1",
        "port": 6379
    },

    "switching": {
        "switch1": {
            "enabled": true,
            "algorithm": "groestl",
            "ports": {
                "3333": {
                    "diff": 0.00390625,
                    "varDiff": {
                        "minDiff": 0.00390625,
                        "maxDiff": 4,
                        "targetTime": 15,
                        "retargetTime": 90,
                        "variancePercent": 30
                    }
                }
            }
        },
        "switch2": {
            "enabled": false,
            "algorithm": "scrypt",
            "ports": {
                "4444": {
                    "diff": 10,
                    "varDiff": {
                        "minDiff": 16,
                        "maxDiff": 512,
                        "targetTime": 15,
                        "retargetTime": 90,
                        "variancePercent": 30
                    }
                }
            }
        },
        "switch3": {
            "enabled": false,
            "algorithm": "x11",
            "ports": {
                "5555": {
                    "diff": 0.001,
                    "varDiff": {
                        "minDiff": 0.001,
                        "maxDiff": 1,
                        "targetTime": 15,
                        "retargetTime": 60,
                        "variancePercent": 30
                    }
                }
            }
   
        }

    },

    "profitSwitch": {
        "enabled": false,
        "updateInterval": 600,
        "depth": 0.90,
        "usePoloniex": true,
        "useCryptsy": true,
        "useMintpal": true,
        "useBittrex": true
    }
}

Here is coins/diamondcoin.json
Code:
{
    "name": "Diamondcoin",
    "symbol": "DMD",
    "algorithm": "groestl",
    "txMessages": false,
    "normalHashing" : true,
    "peerMagic" : "e4e8dbfd",
    "peerMagicTestnet" : "edf2c0ef"
}

Here is pool_configs/diamond.json
Code:
{
    "enabled": true,
    "coin": "diamondcoin.json",

    "address": "dQKbYwJFpq9MDojuwE99D3MHihEkEW6aqk",

    "rewardRecipients": {
        "dZi9hpA5nBC6tSAbPSsiMjb6HeQTprcWHz" : 4.76190477,
        "dEdj7aH7Pgt3oVAeEFmA46sXCDcZYeiQjP" : 0.95238095
    },

    "paymentProcessing": {
        "enabled": true,
        "paymentInterval": 600,
        "minimumPayment": 1,
        "daemon": {
            "host": "127.0.0.1",
            "port": 17772,
            "user": "bogususer",
            "password": "boguspass"
        }
    },

    "ports": {
        "3333": {
            "diff": 0.008,
            "varDiff": {
                "minDiff": 0.00390625,
                "maxDiff": 8,
                "targetTime": 15,
                "retargetTime": 90,
                "variancePercent": 30
            }
        }
    },

    "daemons": [
        {
            "host": "127.0.0.1",
            "port": 17772,
            "user": "bogususer",
            "password": "boguspass"
        }
    ],

    "p2p": {
        "enabled": false,
        "host": "127.0.0.1",
        "port": 17772,
        "disableTransactions": true
    },

    "mposMode": {
        "enabled": false,
        "host": "127.0.0.1",
        "port": 3306,
        "user": "dmdpool",
        "password": "boguspass",
        "database": "dmd",
        "checkPassword": true,
        "autoCreateWorker": false
    }

}

legendary
Activity: 2394
Merit: 1216
The revolution will be digital
Can I run it on a desktop running on pentium III w/o a graphics card ? I think as a pool operator, I dont need to run high flying ASICs ...is not it ?
member
Activity: 70
Merit: 10
a web version is next on my list. Im use to doing everything in access so this was my go to drug lol.
legendary
Activity: 1778
Merit: 1003
NodeMasters
now
how a bout a web version ?
that you could just run and it would save the files in the right format

it could be done in PHP with mysql as the backend

don't mind helping you out if you need it ?
member
Activity: 70
Merit: 10
new version up on the github, database is fully reworked. Included in this post is all of the VB code used in the database for you to examine.

Code:
Option Compare Database


Private Sub Command115_Click()
strpath = CurrentProject.Path & "\"
   Dim cf As String
    cf = strpath & "Startup\daemonstart.sh"
    ' Create the new file
    'Write the conf file
    Dim fso, TextFile
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set TextFile = fso.CreateTextFile(cf, True)
    TextFile.WriteLine ("#!/bin/bash")
    TextFile.WriteLine ("# Generated by OneBTCPlace.com")
'Traverse through all coins
    Dim rs As DAO.Recordset
    Set rs = CurrentDb.OpenRecordset("SELECT * FROM Table1")
   
    'Check to see if the recordset actually contains rows
    If Not (rs.EOF And rs.BOF) Then
        rs.MoveFirst 'Unnecessary in this case, but still a good habit
        Do Until rs.EOF = True

TextFile.WriteLine ("temp=$(ps aux | grep " & rs("Coin_Name") & " | grep -v grep)")
TextFile.WriteLine ("echo $temp")
TextFile.WriteLine ("#if [[ ""$temp"" == * " & rs("Coin_Name") & " * ]]")
TextFile.WriteLine ("if echo ""$temp"" | grep -q """ & rs("Coin_Name") & """; then")
TextFile.WriteLine ("""echo " & rs("Coin_Name") & "  Already Running!""")
TextFile.WriteLine ("else")
If tblNiceEnabled Then
        TextFile.WriteLine ("nice -n " & rs("tblNiceValue") & " " & rs("Coin_Name") & "")
        Else
        'TextFile.WriteLine ("" & rs("Coin_Name") & "")
        TextFile.WriteLine ("nice -n " & rs("tblNiceValue") & " " & rs("Coin_Name") & "")
        End If
TextFile.WriteLine ("fi")
'Move to the next record. Don't ever forget to do this.
            rs.MoveNext
        Loop
End If
MsgBox ("File generation completed! Make sure to chmod +x this file!")
End Sub


Private Sub Command28_Click()
    Dim strpath As String
    strpath = CurrentProject.Path & "\"
    Dim cf As String
    Dim dn As String
    dn = LCase(Display_Name)
    cf = strpath & "Coin_Configs\" & dn & ".conf"
    ' Create the new file
    'Write the conf file
    Dim fso, TextFile
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set TextFile = fso.CreateTextFile(cf, True)
    TextFile.WriteLine ("rpcuser=" & RPC_User)
    TextFile.WriteLine ("rpcpassword=" & RPC_Password)
    TextFile.WriteLine ("server=1")
    TextFile.WriteLine ("daemon=1")
    TextFile.WriteLine ("listen=1")
    TextFile.WriteLine ("rpcconnect=127.0.0.1")
    TextFile.WriteLine ("rpcallow=*")
    TextFile.WriteLine ("gen=0")
    TextFile.WriteLine ("rpcport=" & RPC_Port)
    If P2P_enabled Then
        TextFile.WriteLine ("port=" & P2P_Port)
    Else
        TextFile.WriteLine ("blocknotify=/usr/local/bin/blocknotify 127.0.0.1:17117 " & Display_Name & " %s")
       
    End If
    If IsNull(Additional_Coin_Conf) Then
    TextFile.Close
    Else
        TextFile.WriteLine (Additional_Coin_Conf)
        End If
        TextFile.Close
    MsgBox ("File generation completed!")
   
End Sub
Private Sub Command73_Click()
    Dim strpath As String
    strpath = CurrentProject.Path & "\"
    Dim cf As String
    Dim dn As String
    dn = LCase(Display_Name)
    cf = strpath & "Coin_Configs\Backup\" & dn & ".conf"
    ' Create the new file
    'Write the conf file
    Dim fso, TextFile
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set TextFile = fso.CreateTextFile(cf, True)
    TextFile.WriteLine ("rpcuser=" & Backup_RPC_User)
    TextFile.WriteLine ("rpcpassword=" & Backup_RPC_Password)
    TextFile.WriteLine ("server=1")
    TextFile.WriteLine ("daemon=1")
    TextFile.WriteLine ("listen=0")
    TextFile.WriteLine ("rpcconnect=127.0.0.1")
    TextFile.WriteLine ("rpcallow=*")
    TextFile.WriteLine ("gen=0")
    TextFile.WriteLine ("rpcport=" & Backup_RPC_Port)
    If P2P_enabled Then
        TextFile.WriteLine ("port=" & P2P_Port)
    Else
        TextFile.WriteLine ("blocknotify=/usr/local/bin/blocknotify 127.0.0.1:17117 " & Display_Name & " %s")
       
    End If
    If IsNull(Additional_Coin_Conf) Then
    TextFile.Close
    Else
        TextFile.WriteLine (Additional_Coin_Conf)
        End If
        TextFile.Close
    MsgBox ("File generation completed!")
   
End Sub

Private Sub Command30_Click()
    Dim strpath As String
    strpath = CurrentProject.Path & "\"
    Dim dn As String
    dn = LCase(Display_Name)
    Dim cj As String
    cj = strpath & "Coins\" & dn & ".json"
    Dim pj As String
    pj = strpath & "Pool_Configs\" & dn & ".json"
    ' Create the new file
    'Write the Coin Json file
    Dim fso, TextFile
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set TextFile = fso.CreateTextFile(cj, True)
    TextFile.WriteLine ("{")
    TextFile.WriteLine (vbTab & """name"": """ & Display_Name & """,")
    TextFile.WriteLine (vbTab & """symbol"": """ & Coin_Symbol & """,")
    If Scrypt_Jane Then
        TextFile.WriteLine (vbTab & """chainStartTime"": 1375801200,")
        TextFile.WriteLine (vbTab & """nMin"": 6,")
        TextFile.WriteLine (vbTab & """nMax"": 32, ")
        ElseIf Scrypt_N Then
        TextFile.WriteLine (vbTab & """timeTable"": { ")
        TextFile.WriteLine (vbTab & """2048"": 1390959880,")
        TextFile.WriteLine (vbTab & """4096"": 1438295269,")
        TextFile.WriteLine (vbTab & """8192"": 1485630658,")
        TextFile.WriteLine (vbTab & """16384"": 1532966047,")
        TextFile.WriteLine (vbTab & """32768"": 1580301436,")
        TextFile.WriteLine (vbTab & """65536"": 1627636825,")
        TextFile.WriteLine (vbTab & """131072"": 1674972214,")
        TextFile.WriteLine (vbTab & """262144"": 1722307603 ")
        TextFile.WriteLine ("},")
        ElseIf Keccak Then
        TextFile.WriteLine (vbTab & """normalHashing"": true, ")
            End If
    If P2P_enabled Then
        TextFile.WriteLine (vbTab & """algorithm"": """ & Algorithm & """,")
        TextFile.WriteLine (vbTab & """peerMagic"": """ & P2P_Magic & """")
    Else
        TextFile.WriteLine (vbTab & """algorithm"": """ & Algorithm & """")
    End If
   
    TextFile.WriteLine ("}")

    TextFile.Close
   
    'Write the Pool Json file
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set TextFile = fso.CreateTextFile(pj, True)
    TextFile.WriteLine ("{")
        If Coin_enabled Then
            TextFile.WriteLine (vbTab & """enabled"": true,")
        Else
            TextFile.WriteLine (vbTab & """enabled"": false,")
        End If
        TextFile.WriteLine (vbTab & """coin"": """ & dn & ".json"",")
        TextFile.WriteLine (vbTab & """address"": """ & Wallet & """,")
       
        TextFile.WriteLine (vbTab & """rewardRecipients"": {")
        If IsNull(NOMP_Donation) Then
        TextFile.WriteLine (vbTab & "")
        Else
        TextFile.WriteLine (vbTab & vbTab & """" & NOMP_Donation & """: " & NOMP_Amount & ",")
        End If
        If IsNull(Recipient_2) Then
            TextFile.WriteLine (vbTab & vbTab & """" & Payment_Address & """: " & Recipient_One_Amount & "")
            Else
            TextFile.WriteLine (vbTab & vbTab & """" & Payment_Address & """: " & Recipient_One_Amount & ",")
            TextFile.WriteLine (vbTab & vbTab & """" & Recipient_2 & """: " & Recipient_Two_Amount & "")
            End If
            TextFile.WriteLine (vbTab & "},")
       
        TextFile.WriteLine (vbTab & """paymentProcessing"": {")
            TextFile.WriteLine (vbTab & vbTab & """enabled"": true,")
            TextFile.WriteLine (vbTab & vbTab & """paymentInterval"": " & Payment_Interval & ",")
            TextFile.WriteLine (vbTab & vbTab & """minimumPayment"": " & Min_Payout & ",")
            TextFile.WriteLine (vbTab & vbTab & """daemon"": {")
                TextFile.WriteLine (vbTab & vbTab & vbTab & """host"": ""127.0.0.1"",")
                TextFile.WriteLine (vbTab & vbTab & vbTab & """port"": " & RPC_Port & ",")
                TextFile.WriteLine (vbTab & vbTab & vbTab & """user"": """ & RPC_User & """,")
                TextFile.WriteLine (vbTab & vbTab & vbTab & """password"": """ & RPC_Password & """")
            TextFile.WriteLine (vbTab & vbTab & "}")
        TextFile.WriteLine (vbTab & "},")
   
        TextFile.WriteLine (vbTab & """mposMode"": {")
            TextFile.WriteLine (vbTab & vbTab & """enabled"": false,")
            TextFile.WriteLine (vbTab & vbTab & """host"": ""127.0.0.1"",")
            TextFile.WriteLine (vbTab & vbTab & """port"": 3306,")
            TextFile.WriteLine (vbTab & vbTab & """user"": ""me"",")
            TextFile.WriteLine (vbTab & vbTab & """password"": ""mypass"",")
            TextFile.WriteLine (vbTab & vbTab & """database"": ""ltc"",")
            TextFile.WriteLine (vbTab & vbTab & """checkPassword"": true,")
            TextFile.WriteLine (vbTab & vbTab & """autoCreateWorker"": false")
        TextFile.WriteLine (vbTab & "},")
   
        TextFile.WriteLine (vbTab & """ports"": {")
        If IsNull(Stratum_Port_Two) And IsNull(Stratum_Port_Three) Then
            TextFile.WriteLine (vbTab & vbTab & """" & Stratum_Port_One & """: {")
            TextFile.WriteLine (vbTab & vbTab & vbTab & """diff"": " & Stratum_One_Diff & "")
            TextFile.WriteLine (vbTab & vbTab & "}")
        TextFile.WriteLine (vbTab & "},")
       
         ElseIf IsNull(Stratum_Port_One) And IsNull(Stratum_Port_Three) Then
            TextFile.WriteLine (vbTab & vbTab & """" & Stratum_Port_Two & """: {")
            TextFile.WriteLine (vbTab & vbTab & vbTab & """diff"": " & Stratum_Two_SetDiff & ",")
                TextFile.WriteLine (vbTab & vbTab & vbTab & """varDiff"": {")
                    TextFile.WriteLine (vbTab & vbTab & vbTab & vbTab & """minDiff"": " & Stratum_Two_MinDiff & ",")
                    TextFile.WriteLine (vbTab & vbTab & vbTab & vbTab & """maxDiff"": " & Stratum_Two_MaxDiff & ",")
                    TextFile.WriteLine (vbTab & vbTab & vbTab & vbTab & """targetTime"": " & Stratum_Two_Target & ",")
                    TextFile.WriteLine (vbTab & vbTab & vbTab & vbTab & """retargetTime"": " & Stratum_Two_Retarget & ",")
                    TextFile.WriteLine (vbTab & vbTab & vbTab & vbTab & """variancePercent"": " & Stratum_Two_Variance & "")
                TextFile.WriteLine (vbTab & vbTab & vbTab & "}")
            TextFile.WriteLine (vbTab & vbTab & "}")
        TextFile.WriteLine (vbTab & "},")
       
        ElseIf IsNull(Stratum_Port_Three) Then
        TextFile.WriteLine (vbTab & vbTab & """" & Stratum_Port_One & """: {")
            TextFile.WriteLine (vbTab & vbTab & vbTab & """diff"": " & Stratum_One_Diff & "")
            TextFile.WriteLine (vbTab & vbTab & "},")
            TextFile.WriteLine (vbTab & vbTab & """" & Stratum_Port_Two & """: {")
            TextFile.WriteLine (vbTab & vbTab & vbTab & """diff"": " & Stratum_Two_SetDiff & ",")
                TextFile.WriteLine (vbTab & vbTab & vbTab & """varDiff"": {")
                    TextFile.WriteLine (vbTab & vbTab & vbTab & vbTab & """minDiff"": " & Stratum_Two_MinDiff & ",")
                    TextFile.WriteLine (vbTab & vbTab & vbTab & vbTab & """maxDiff"": " & Stratum_Two_MaxDiff & ",")
                    TextFile.WriteLine (vbTab & vbTab & vbTab & vbTab & """targetTime"": " & Stratum_Two_Target & ",")
                    TextFile.WriteLine (vbTab & vbTab & vbTab & vbTab & """retargetTime"": " & Stratum_Two_Retarget & ",")
                    TextFile.WriteLine (vbTab & vbTab & vbTab & vbTab & """variancePercent"": " & Stratum_Two_Variance & "")
                TextFile.WriteLine (vbTab & vbTab & vbTab & "}")
            TextFile.WriteLine (vbTab & vbTab & "}")
        TextFile.WriteLine (vbTab & "},")
       
        Else
            TextFile.WriteLine (vbTab & vbTab & """" & Stratum_Port_One & """: {")
            TextFile.WriteLine (vbTab & vbTab & vbTab & """diff"": " & Stratum_One_Diff & "")
            TextFile.WriteLine (vbTab & vbTab & "},")
            TextFile.WriteLine (vbTab & vbTab & """" & Stratum_Port_Two & """: {")
            TextFile.WriteLine (vbTab & vbTab & vbTab & """diff"": " & Stratum_Two_SetDiff & ",")
                TextFile.WriteLine (vbTab & vbTab & vbTab & """varDiff"": {")
                    TextFile.WriteLine (vbTab & vbTab & vbTab & vbTab & """minDiff"": " & Stratum_Two_MinDiff & ",")
                    TextFile.WriteLine (vbTab & vbTab & vbTab & vbTab & """maxDiff"": " & Stratum_Two_MaxDiff & ",")
                    TextFile.WriteLine (vbTab & vbTab & vbTab & vbTab & """targetTime"": " & Stratum_Two_Target & ",")
                    TextFile.WriteLine (vbTab & vbTab & vbTab & vbTab & """retargetTime"": " & Stratum_Two_Retarget & ",")
                    TextFile.WriteLine (vbTab & vbTab & vbTab & vbTab & """variancePercent"": " & Stratum_Two_Variance & "")
                TextFile.WriteLine (vbTab & vbTab & vbTab & "}")
            TextFile.WriteLine (vbTab & "},")
            TextFile.WriteLine (vbTab & vbTab & """" & Stratum_Port_Three & """: {")
            TextFile.WriteLine (vbTab & vbTab & vbTab & """diff"": " & Stratum_Three_Diff & "")
            TextFile.WriteLine (vbTab & vbTab & vbTab & "}")
            TextFile.WriteLine (vbTab & vbTab & "},")
            End If
       
        TextFile.WriteLine (vbTab & """daemons"": [")
        If IsNull(Backup_RPC_User) Then
            TextFile.WriteLine (vbTab & vbTab & "{")
                TextFile.WriteLine (vbTab & vbTab & vbTab & """host"": ""127.0.0.1"",")
                TextFile.WriteLine (vbTab & vbTab & vbTab & """port"": " & RPC_Port & ",")
                TextFile.WriteLine (vbTab & vbTab & vbTab & """user"": """ & RPC_User & """,")
                TextFile.WriteLine (vbTab & vbTab & vbTab & """password"": """ & RPC_Password & """")
            TextFile.WriteLine (vbTab & vbTab & "}")
        TextFile.WriteLine (vbTab & "],")
        Else
        TextFile.WriteLine (vbTab & vbTab & "{")
                TextFile.WriteLine (vbTab & vbTab & vbTab & """host"": ""127.0.0.1"",")
                TextFile.WriteLine (vbTab & vbTab & vbTab & """port"": " & RPC_Port & ",")
                TextFile.WriteLine (vbTab & vbTab & vbTab & """user"": """ & RPC_User & """,")
                TextFile.WriteLine (vbTab & vbTab & vbTab & """password"": """ & RPC_Password & """")
            TextFile.WriteLine (vbTab & vbTab & "},")
            TextFile.WriteLine (vbTab & vbTab & "{")
            TextFile.WriteLine (vbTab & vbTab & vbTab & """host"": ""127.0.0.1"",")
                TextFile.WriteLine (vbTab & vbTab & vbTab & """port"": " & Backup_RPC_Port & ",")
                TextFile.WriteLine (vbTab & vbTab & vbTab & """user"": """ & Backup_RPC_User & """,")
                TextFile.WriteLine (vbTab & vbTab & vbTab & """password"": """ & Backup_RPC_Password & """")
                TextFile.WriteLine (vbTab & vbTab & "}")
        TextFile.WriteLine (vbTab & "],")
        End If
       
       
        TextFile.WriteLine (vbTab & """p2p"": {")
            If P2P_enabled Then
                TextFile.WriteLine (vbTab & vbTab & """enabled"": true,")
            Else
                TextFile.WriteLine (vbTab & vbTab & """enabled"": false,")
            End If
            TextFile.WriteLine (vbTab & vbTab & """host"": ""127.0.0.1"",")
            TextFile.WriteLine (vbTab & vbTab & """port"": " & P2P_Port & ",")
             If Disable_Trans Then
                TextFile.WriteLine (vbTab & vbTab & """disableTransactions"": true")
            Else
                TextFile.WriteLine (vbTab & vbTab & """disableTransactions"": false")
            End If
           
        TextFile.WriteLine (vbTab & "}")
    TextFile.WriteLine ("}")
   
    TextFile.Close
    MsgBox ("File generation completed!")

End Sub

Private Sub Command112_Click()
    Dim strpath As String
    strpath = CurrentProject.Path & "\"
    Dim cf As String
    cf = strpath & "Tables\iptables.up.rules"
    ' Create the new file
    'Write the conf file
    Dim fso, TextFile
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set TextFile = fso.CreateTextFile(cf, True)
    TextFile.WriteLine ("# Generated by webmin")
    TextFile.WriteLine ("*filter")
    TextFile.WriteLine (":FORWARD ACCEPT [0:0]")
    TextFile.WriteLine (":INPUT ACCEPT [0:0]")
    TextFile.WriteLine (":OUTPUT ACCEPT [0:0]")
    TextFile.WriteLine ("-I OUTPUT -o eth0 -d 0.0.0.0/0 -j ACCEPT")
    TextFile.WriteLine ("-I INPUT -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT")
   
    'Traverse through all coins
    Dim rs As DAO.Recordset
    Set rs = CurrentDb.OpenRecordset("SELECT * FROM Table1")
   
    'Check to see if the recordset actually contains rows
    If Not (rs.EOF And rs.BOF) Then
        rs.MoveFirst 'Unnecessary in this case, but still a good habit
        Do Until rs.EOF = True
            'Write 3 ports
            If Not IsNull(rs("Stratum_Port_One")) Then
                TextFile.WriteLine ("-A INPUT -p tcp -m tcp --dport " & rs("Stratum_Port_One") & " -j ACCEPT")
            End If
            If Not IsNull(rs("Stratum_Port_Two")) Then
                TextFile.WriteLine ("-A INPUT -p tcp -m tcp --dport " & rs("Stratum_Port_Two") & " -j ACCEPT")
            End If
            If Not IsNull(rs("Stratum_Port_Three")) Then
                TextFile.WriteLine ("-A INPUT -p tcp -m tcp --dport " & rs("Stratum_Port_Three") & " -j ACCEPT")
            End If
   
            'Move to the next record. Don't ever forget to do this.
            rs.MoveNext
        Loop
    End If
   
    'write the rest of file
    TextFile.WriteLine ("-A INPUT -p udp -m udp --dport domain -j ACCEPT")
    TextFile.WriteLine ("-A INPUT -p tcp -m tcp --dport 8080 -j ACCEPT")
    TextFile.WriteLine ("-A INPUT -p tcp -m tcp --dport 20000 -j ACCEPT")
    TextFile.WriteLine ("-A INPUT -p tcp -m tcp --dport 10000 -j ACCEPT")
    TextFile.WriteLine ("-A INPUT -p tcp -m tcp --dport https -j ACCEPT")
    TextFile.WriteLine ("-A INPUT -p tcp -m tcp --dport http -j ACCEPT")
    TextFile.WriteLine ("-A INPUT -p tcp -m tcp --dport imaps -j ACCEPT")
    TextFile.WriteLine ("-A INPUT -p tcp -m tcp --dport imap -j ACCEPT")
    TextFile.WriteLine ("-A INPUT -p tcp -m tcp --dport pop3s -j ACCEPT")
    TextFile.WriteLine ("-A INPUT -p tcp -m tcp --dport pop3 -j ACCEPT")
    TextFile.WriteLine ("-A INPUT -p tcp -m tcp --dport ftp-data -j ACCEPT")
    TextFile.WriteLine ("-A INPUT -p tcp -m tcp --dport ftp -j ACCEPT")
    TextFile.WriteLine ("-A INPUT -p tcp -m tcp --dport domain -j ACCEPT")
    TextFile.WriteLine ("-A INPUT -p tcp -m tcp --dport smtp -j ACCEPT")
    TextFile.WriteLine ("-A INPUT -p tcp -m tcp --dport ssh -j ACCEPT")
    TextFile.WriteLine ("-A INPUT -p icmp -j ACCEPT")
    TextFile.WriteLine ("-A INPUT -i lo -j ACCEPT")
    TextFile.WriteLine ("-P INPUT DROP")
    TextFile.WriteLine ("-P FORWARD DROP")
    TextFile.WriteLine ("COMMIT")
    TextFile.WriteLine ("# Completed")
    TextFile.Close
    MsgBox ("File generation completed!")

End Sub
member
Activity: 70
Merit: 10
ive got a new version coming out soon with the changes to the config files.

Also just to let you know if you copy the generated files direct to your server you need to run dos2unix to convert them, otherwise you are going to get the pain in the ass ^m at the end of each line. I checked and there is no way to have access remove this before file generation.
legendary
Activity: 1778
Merit: 1003
NodeMasters
For anyone that either uses NOMP or is thinking about using NOMP for running your pools, I have created a MS Access Database that has the following features:

1. Allows you to quickly set or change many config options such as stratum ports, payout interval, etc

2. Generate your coin daemon conf file; ie bitcoin.conf

3. Generate your backup coin daemon file for use with the -datadir=/backup flag

4. Generate JSON files required for nomp/coin and nomp/pool_config

5. Generate iptables.up.rules to allow access to all your new stratum ports.

Soon to come feature will allow you to create a startup script that will if selected create your -datadir=/backup, start all coin daemons if server goes down, or just start newly added coin daemons without interrupting anything already running. 

https://github.com/onebtcplace/NOMP-MS-Access-database-and-json-generator

Just had play
Very nice work
it will save me a load of time
member
Activity: 70
Merit: 10
For anyone that either uses NOMP or is thinking about using NOMP for running your pools, I have created a MS Access Database that has the following features:

1. Allows you to quickly set or change many config options such as stratum ports, payout interval, etc

2. Generate your coin daemon conf file; ie bitcoin.conf

3. Generate your backup coin daemon file for use with the -datadir=/backup flag

4. Generate JSON files required for nomp/coin and nomp/pool_config

5. Generate iptables.up.rules to allow access to all your new stratum ports.

6. Generate start-up script that will check to see if the coind is already running and if so will skip and move on to next coin.

7. Stratum ports will automatically increase by 15 for each new record. You can also manually enter in port information.

https://github.com/onebtcplace/NOMP-MS-Access-database-and-json-generator





Jump to: