2

次のように、raspbian で python 2.7 を使用してメッセージ ブローカーに接続しようとしています。

import paho.mqtt.client as paho


host="messagesight.demos.ibm.com"
port=1883

def on_connect(pahoClient, obj, rc):
# Once connected, publish message
        print "Connected Code = %d"%(rc)
        client.publish("prueba/123", "Hello World", 0)


def on_log(pahoClient, obj, level, string):
        print string

def on_publish(pahoClient, packet, mid):
# Once published, disconnect
        print "Published"
        pahoClient.disconnect()

def on_disconnect(pahoClient, obj, rc):
        print "Disconnected"

# Create a client instance
client=paho.Client()

# Register callbacks
client.on_connect = on_connect
client.on_log = on_log
client.on_publish = on_publish
client.on_disconnnect = on_disconnect

#Set userid and password
client.username_pw_set(userID, password)

#connect
x = client.connect(host, port, 60)

client.loop_forever()

スクリプトを実行すると、次のエラーが発生します。

トレースバック (最新の呼び出しが最後): ファイル "ejemplo.py"、27 行目、client=paho.Client() ファイル "/usr/local/lib/python2.7/dist-packages/paho/mqtt/client.py "、410 行目、init self._sockpairR、self._sockpairW = _socketpair_compat() ファイル"/usr/local/lib/python2.7/dist-packages/paho/mqtt/client.py"、255 行目、_socketpair_compat listensock .bind(("localhost", 0)) File "/usr/lib/python2.7/socket.py", line 224, in meth return getattr(self._sock,name)(*args) socket.error: [ Errno 99] 要求されたアドレスを割り当てることができません

どうすれば修正できますか?

4

1 に答える 1

1

私はすぐにあなたのコードを使い果たしました。それは問題なく公開されていmessagesight.demos.ibm.comます。

例

私がした唯一のことは、ユーザーID、パスワードをコメントアウトすることでした。

#client.username_pw_set(userID, password)

Paho Python Client を正しくインストールしましたか。これも良い例です。http://www.eclipse.org/paho/clients/python/

于 2014-10-28T23:04:49.030 に答える