0

http://code.google.com/p/apnsd/で apns デーモンを動作させようとしていますが、ネットワークに問題があります。ポート 1055 でリッスンするようにデーモンを構成しました (ただし、他のポートも試しました)。デーモンを起動でき、正常に動作しているように見えます (Apple サーバーへの接続を含む)。私は Windows 7 で実行しており、Windows ファイアウォールを無効にしています (したがって、ファイアウォールの問題ではないと思います)。

http://twistedmatrix.com/documents/current/core/examples/index.html (simpleclient.py & simpleserv.py)のツイスト デモ サーバーとクライアントをさまざまなポートで正常に実行できたことも確認できました。ポートが netstat -a に表示されるため、OS/python/twisted/その他の必要なモジュールのインストール/構成に問題があるとは思いません。

dameon の関連するコード (自分で追加した print ステートメント) は次のとおりだと思います。

print "LISTENING TCP SERVER"
print "PORT", listener_data["port"], listener_data["port"].__repr__
server = internet.TCPServer(listener_data["port"], listener)
print server

この行を実行すると、netstat -a でポートが開いているように見えると思います。誰でも問題が何であるかを示唆したり、さらに診断する方法について提案を提供したりできますか?

関連性はないと思いますが、apns デーモンの構成は次のとおりです。

{
    'listeners': {
        'line': {
            'class': 'apnsd.listeners.line.LineProtocolFactory',
            # 'interface': "192.168.1.3",  #default: all interface
            'port':1055,
        },
    },

    'apps': {
        'gp': {
            'apns_dev': {
                'app_id':           "xxx",
                'app_class':        "xxx",
                'certificate_file': "F:/cert_file.pem",
                'privatekey_file':  "F:/pk_unencrypted.pem",
            },
        },
    }
}
4

1 に答える 1

1

main.pyではなくtwistedを使用してデーモンを起動してみてください。

ツイストスクリプトは、ツイストアプリをサービスに変えるTwistedのユーティリティです。使用法は次のとおりです。

$PYTHON_ROOT/bin/twistd apnsd -c $APNSD_CONFIG

これにより、apnsdがデーモンとして起動します。デーモン化しないようにするには、-nパラメーターを渡すだけです。

$PYTHON_ROOT/bin/twistd -n apnsd -c $APNSD_CONFIG
于 2012-05-05T06:15:59.303 に答える