如何在 Amazon EC2 实例上部署 Wickr IO webhook 机器人?

3 分钟阅读
0

我想在 Amazon Elastic Compute Cloud (Amazon EC2) 实例上部署 AWS Wickr IO webhook 机器人。

解决方法

要在 Amazon EC2 Linux 实例上配置 Wickr IO webhook 机器人,请完成以下步骤:

  1. 打开 Wickr 管理员控制台。然后,创建机器人用户。如果您无法打开 Wickr 管理员控制台,请使用 Wickr 网络管理员来创建机器人用户。
    注意:默认密码策略要求密码至少包含 8 个字符。另外,请确保账户名后缀包含 bot

  2. 启动 Amazon Linux 2023 实例来部署容器:

    $ sudo yum update -y
    $ sudo dnf install docker
    $ sudo systemctl enable docker
    $ sudo systemctl start docker
  3. 创建 /opt/WickrIO 文件夹:

    $ mkdir /opt
    $ cd /opt
    $ mkdir WickrIO
  4. 部署 Wickr IO 客户端容器。指定映射到 8080 的端口以接收请求。此操作会自动进入容器的命令行。

    $ sudo docker pull public.ecr.aws/x3s2s6k3/wickrio/bot-cloud:latest
    $ sudo docker run -v /opt/WickrIO:/opt/WickrIO -p 8080:8080 -ti public.ecr.aws/x3s2s6k3/wickrio/bot-cloud:latest
  5. 同意许可协议。

  6. 在提示符处输入 add 以添加新客户端,然后输入您创建的用户名和密码。

    示例:
    **注意:**将 example-webhook-bot 替换为您的用户名,将 example-password 替换为您的密码。

    WARNING: Please make sure you include the -t -i (or -ti) option when starting
    the WickrIO docker container with the docker run command. This will allow you
    to attach and detach from the WickrIO console.
    Continue to see welcome message on startup? (default: yes):yes
    
    Enter command:add
    Enter the user name:example-webhook-bot
    Enter the password:example-password
    Creating user:example-webhook-bot"
    
    Begin registration with password.
    
    Begin register new user context.
    
    Successfully created user
    
    Successfully logged in as new user!
    
    Our work is done here, logging off!
    
    The autologin capability allows you to start a bot without having to enter the
    password, after the initial login.
    NOTE: The bot client's password is NOT saved to disk.
    
    Do you want to use autologin? (default: yes):yes
  7. 要配置 wickrio-webhook-bot 集成,请完成以下步骤:
    要匹配容器映射,请使用端口 8080 进行集成。
    在指定 webhook 接收器端点时,请使用 Amazon EC2 实例的公有 IP 地址。
    为确保您拥有静态公有 IP 地址,请将 Elastic IP 地址关联到您的 Amazon EC2 实例。

    示例:
    **注意:**将 example-wickrio-webhook-bot 替换为您的机器人集成。

    Enter the bot integration to use:example-wickrio-webhook-bot
    **********************************************************************
    Begin setup of wickrio-webhook-bot software for example-webhook-bot
    v16.20.2
    6.20.1
    npm notice
    npm notice New major version of npm available! 8.19.4 -> 10.5.0
    npm notice Changelog: https://github.com/npm/cli/releases/tag/v10.5.0
    npm notice Run npm install -g npm@10.5.0 to update!
    npm notice
    Copying wickrio-webhook-bot from the NPM registry
    Searching NPM registry
    Searching NPM registry
    Searching NPM registry
    Searching NPM registry
    Searching NPM registry
    Installing example-wickrio-webhook-bot software
    Begin configuration of example-wickrio-webhook-bot software for example-webhook-bot
     Select a port for the bot HTTP server [8080]:8080
     Enter the frontend URL for your webhook receiver :exampl-webhook-bot-ip
    
    Integration files written to:
    /opt/WickrIO/clients/client-webhook-bot/integration/example-wickrio-webhook-bot
    
    End of setup of example-wickrio-webhook-bot software for example-webhook-bot
    **********************************************************************  
    Successfully added record to the database!
  8. 要确认客户订单并启动客户端,请完成以下步骤:
    要查看可用的客户端,请在提示符处输入 list 命令。
    找到要启动的客户端。注意索引号 #
    要启动客户端,请在提示符处输入 start [index #]。例如,如果索引号为 0,则输入 start 0
    输入 start 命令后,再次输入 list 以验证客户端的状态是否为 Running

    示例:

    Enter command:list
    Current list of clients:
    #  Name                Status  Integration          Version  Misc
    =======================================================================
    0  example-webhook-bot  Paused  wickrio-webhook-bot  unknown
    
    Enter command:start 0
    Preparing to start the client with the name example-webhook-bot
    Do you really want to start the client with the name client-webhook-bot:yes
    Enter password for this client:********
    
    Enter command:list
    Current list of clients:
    #  Name                Status   Integration          Version  Events  Misc
    ================================================================================
    0  example-webhook-bot  Running  wickrio-webhook-bot  unknown  1
  9. 要测试服务端口,请前往 http://example-ip-address:8080。如下所示:

    Cannot GET /

    **注意:**如果前面的步骤失败,请检查您的 Amazon EC2 实例中的安全组和网络设置。

  10. 创建一个普通的 Wickr 用户并登录 Wickr 客户端。

  11. 创建一个房间,然后将 example-webhook-bot 机器人用户添加为版主。为了允许消息传送,此值是必需的。

  12. 要在聊天窗口中显示聊天室的请求 URL,请输入 /show

输出示例:

http://example-ip-address/send/example-webhook-id
  1. 要向房间发送测试消息,请使用 curl。务必指定端口 8080:

**注意:**将 example-ip-address 替换为 IP 地址,将 example-webhook-id 替换为您在上一步中检索到的 webhook ID。

curl http://example-ip-address:8080/send/example-webhook-id -d 'payload={"text": "hello world"}'

相关信息

配置(在 Wickr IO 网站上)

AWS 官方
AWS 官方已更新 4 个月前