国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

基于Mixin Network的Ruby比特幣開發教程

jayzou / 2717人閱讀

摘要:是一個免費的極速的端對端加密數字貨幣交易系統在本章中,你可以按教程在中創建一個來接收用戶消息學到如何給機器人轉比特幣或者讓機器人給你轉比特幣資源匯總課程簡介創建一個機器人創建一個接受消息的機器人通過本教程,你將學會如何用創建一個機器人


Mixin Network 是一個免費的 極速的端對端加密數字貨幣交易系統.
在本章中,你可以按教程在Mixin Messenger中創建一個bot來接收用戶消息, 學到如何給機器人轉比特幣 或者 讓機器人給你轉比特幣.

Mixin network 資源匯總

課程簡介

創建一個機器人

創建一個接受消息的機器人

通過本教程,你將學會如何用Ruby創建一個機器人APP,讓它能接受消息.

Ruby 環境安裝:

本教程的程序基于 Ruby 開發.

On macOS

brew update
brew install rbenv
rbenv install 2.6.3
rbenv shell 2.6.3

On Ubuntu

sudo apt update
sudo apt install git curl libssl-dev libreadline-dev zlib1g-dev autoconf  
bison build-essential libyaml-dev libreadline-dev libncurses5-dev libffi-dev libgdbm-dev

curl -sL https://github.com/rbenv/rbenv-installer/raw/master/bin/rbenv-installer | bash -

echo "export PATH=/root/.rbenv/bin:$PATH" >> ~/.bashrc
echo "eval "$(rbenv init -)"" >> ~/.bashrc
source ~/.bashrc

rbenv install 2.6.3
rbenv shell 2.6.3

檢查安裝情況!

wenewzha:~ wenewzhang$ rbenv shell 2.6.3
wenewzha:minecraft wenewzhang$ ruby -v
ruby 2.6.3p62 (2019-04-16 revision 67580) [x86_64-darwin18]
安裝依賴包

本教程依賴 faye-websocketmixin_bot.

gem install faye-websocket
gem install mixin_bot
創建你的項目

到你的工作文檔中,創建一個目錄,并取一個名字,比如:mixin_labs-ruby-bot

mkdir mixin_labs-ruby-bot
mixin_labs-ruby-bot
創建第一個機器人APP

按下面的提示,到mixin.one創建一個APPtutorial.

生成相應的參數

記下這些生成的參數
它們將用于config.yml中.


在項目目錄下,創建config.yml,將生成的參數,替換成你的!

config.yml
`> config.yml
MIXIN_CLIENT_ID: "a1ce2967-a534-417d-bf12-c86571e4eefa"
MIXIN_CLIENT_SECRET: "a3f52f6c417f24bfdf583ed884c5d0cb489320c58222b061298e4a2d41a1bbd7"
MIXIN_DEFAULT_SCOPE: "PROFILE:READ+PHONE:READ+ASSETS:READ"
MIXIN_PIN_CODE: "457965"
MIXIN_SESSION_ID: "26ed1f52-a3b4-4cc3-840f-469d3f19b10b"
MIXIN_PIN_TOKEN: "0t4EG7tJerZYds7N9QS0mlRPCYsEVTQBe9iD1zNBCFN/XO7XEB87ypsCDWfRmDiZ7izzB/nokuMJEu6RJShMHCdIwYISU9xckA/8hIsRVydvoP14G/9kRidMHl/3RPLDMK6U2yCefo2BH0kQdbcRDxpiddqrMc4fYmZo6UddU/A="
MIXIN_PRIVATE_KEY: |
  -----BEGIN RSA PRIVATE KEY-----
  MIICXAIBAAKBgQDaSPE8Cu18xzr8MOcgJx8tQnRdlS7c6JVs23497IGdIybIUYmZ
  8zvgrFozpGjQYz2ayRDMWUQd/wm7e0Tf7n4bVCmQfkk72usAHX6pNA4HUeTeTmDT
  sZQKdVx0K84Y3u512cAi5artnUjIsFRPP/LhAX0ujdgNMWIcHrMRh77s1wIDAQAB
  AoGAVPW3Dwuhy8MvriDKlLUlaVRIPnRmPQ05u5ji1e9Ls4GPAsDZsdX+JEBxC1Ce
  ix1VSP2hUCgeXx55B0O/VvlYk0pfogrxDgOw2dP04uboMG7tSE4TZK8J9zFPUrE0
  wizFmbkgV2OEw33r00FqEhr0KnB9kXOzB5BvKN/FVyXui+ECQQDz1x3hOypW2kM9
  uOqjQyg55VDkkXVZ8RgOmVd24MfkDjRauj1oGgLUWvINzhmXN5m84IhlOz1hgEuO
  enHOpMmDAkEA5SuVeRhBZofUoaRbFxWL4jAN6+uuxFxZ0gCc9l4gwFkQp0RbEw/S
  tiX9Cl06JR2oc2FBlaO5Vi1u8XfxOSUzHQJBANijfKaJHFrB3A/QZJbcqbaWaEJK
  gYqBSzBdSHoTx0R04krhQIFm6rCkhH2DaPUSrwJCMqxN74DarUZOvyIrAeUCQH2F
  ecFx/6BhFZ3Tn/Ds5ElneLiXxonW63uSymZG+DlijzSOxDOUnx0VgZuDpK1fqTxJ
  MNr9ai5BhFrOD1n1fiECQBafDxsfFQv3w6j5/2PL54DhddGo50FzGxYR1LlttdVI
  Q04EytqK7grDDS9PsfeXqdUo0D3NMSJ0BYs/kDsqGSc=
  -----END RSA PRIVATE KEY-----

需要替換的參數包括: client_id, client_secret, and the pin, pin token, session_id, private key.

經典的Hello world
require "faye/websocket"
require "eventmachine"
require "json"
require "zlib"
require "mixin_bot"
require "yaml"

yaml_hash = YAML.load_file("./config.yml")

MixinBot.client_id  = yaml_hash["MIXIN_CLIENT_ID"]
MixinBot.session_id = yaml_hash["MIXIN_SESSION_ID"]
MixinBot.client_secret = yaml_hash["MIXIN_CLIENT_SECRET"]
MixinBot.pin_token   = yaml_hash["MIXIN_PIN_TOKEN"]
MixinBot.private_key = yaml_hash["MIXIN_PRIVATE_KEY"]

access_token = MixinBot.api.access_token("GET","/","")
puts access_token

authorization = format("Bearer %s", access_token)



EM.run {
  ws = Faye::WebSocket::Client.new("wss://blaze.mixin.one/", ["Mixin-Blaze-1"],
    :headers => { "Authorization" => authorization }
  )

  ws.on :open do |event|
    p [:open]
    ws.send(MixinBot.api.list_pending_message)
  end

  ws.on :message do |event|
    p [:message]
    data = event.data
    msg = MixinBot.api.read_message(data)
    jsmsg =  JSON.parse msg
    # p jsmsg
    # p jsmsg["data"]
    if jsmsg["action"] == "CREATE_MESSAGE" && jsmsg["data"] != nil
      msgid = jsmsg["data"]["message_id"]
      ws.send(MixinBot.api.acknowledge_message_receipt(msgid))
      if jsmsg["data"]["category"] == "PLAIN_TEXT"
        conversation_id = jsmsg["data"]["conversation_id"]
        decoded_msg = Base64.decode64 jsmsg["data"]["data"]
        p decoded_msg
        reply_msg = MixinBot.api.plain_text_message(conversation_id, decoded_msg)
        ws.send(reply_msg)
      end
      if jsmsg["data"]["category"] == "SYSTEM_ACCOUNT_SNAPSHOT"
        jsdata =  JSON.parse (Base64.decode64(jsmsg["data"]["data"]))
        p jsdata
      end
    end
  end

  ws.on :error do |event|
    p [:error]
  end

  ws.on :close do |event|
    p [:close, event.code, event.reason]
    ws = nil
  end
}
編譯與運行

執行 ruby websocket_mixin_bot.rb 程序

ruby websocket_mixin_bot.rb

如果一切正常,顯示如下:

[:open]
[:message]
{"id"=>"2e13092f-4048-488f-82bc-f5ee9f984002", "action"=>"LIST_PENDING_MESSAGES"}

在手機安裝 Mixin Messenger,增加機器人為好友,(比如這個機器人是7000101639) 然后發送消息給它,效果如下!

Mixin Messenger支持的消息類型很多,具體可到下面鏈接查看: WebSocket消息類型.

源代碼解釋

每接收到一個消息,需要按消息編號(message_id)給服務器回復一個"已讀"的消息,避免服務器在機器人重新登入后,再次發送處理過的消息!

ws.send(MixinBot.api.acknowledge_message_receipt(msgid))
完成

現在你的機器人APP運行起來了,你打算如何改造你的機器人呢?

完整的代碼在這兒

下一課機器人接收與處理加密貨幣

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/24679.html

相關文章

  • Ruby 比特開發教程: 創建比特錢包

    摘要:我們已經創建過一個回復消息的機器人和一個能自動支付比特幣的機器人通過本教程的學習,你可以學到如下內容如何創建一個比特幣錢包如何讀取比特幣錢包的余額如何支付比特幣并即時確認如何將的比特幣提現到你的冷錢包或第三方交易所前期準備你要有一個賬戶。 showImg(https://github.com/wenewzhang/mixin_labs-ruby-bot/raw/master/ruby-...

    yedf 評論0 收藏0
  • Ruby 比特開發教程匯總

    摘要:是一個免費的極速的端對端加密數字貨幣交易系統官方資源匯總課程簡介創建一個機器人比特幣開發教程機器人接受比特幣并立即退還用戶比特幣開發教程創建比特幣錢包買賣實時兌換買賣在自由市場掛單買賣買賣任意在自由市場掛單買賣其他編程語言匯總比特幣開發教程 showImg(https://segmentfault.com/img/remote/1460000019234638?w=1200&h=659...

    wangym 評論0 收藏0
  • 如何用 Ruby 買賣Bitcoin

    摘要:比特幣的到帳時間是個區塊的高度,約分鐘。請注意,比特幣與的地址是一樣的。 showImg(https://segmentfault.com/img/remote/1460000019234638?w=1200&h=659); 方案一: 通過ExinCore API進行幣幣交易 Exincore 提供了基于Mixin Network的幣幣交易API. 你可以支付USDT給ExinCore...

    qieangel2013 評論0 收藏0
  • 基于Mixin NetworkGo語言比特開發教程 : 創建一個比特錢包

    摘要:帳號之間的比特幣支付通過,我們可以先轉比特幣給機器人,然后讓機器人轉幣給新用戶。下面的代碼,可以讀取比特幣錢包余額讀取的余額,來確認比特幣是不是轉成功了注意是新用戶的。 showImg(https://github.com/wenewzhang/mixin_labs-go-bot/raw/master/Bitcoin_go.jpg);我們已經創建過一個回復消息的機器人和一個能自動支付比...

    legendaryedu 評論0 收藏0
  • 通過 Ruby 買賣Bitcoin:使用開放交易所OceanOne

    摘要:方案二掛單交易所是基于的去中心化交易所,它性能一流。完整的步驟如下檢查比特幣或的余額,錢包地址。比特幣的到帳時間是個區塊的高度,約分鐘。 showImg(https://segmentfault.com/img/remote/1460000019234638?w=1200&h=659);上一章介紹了Exincore,你可以1秒完成資產的市價買賣。如果你想限定價格買賣,或者買賣一些exi...

    taoszu 評論0 收藏0

發表評論

0條評論

jayzou

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<