← Back to Plugins
Channels

Channel Viber

patrickrkahn By patrickrkahn 👁 827 views ▲ 0 votes

OpenClaw Viber channel plugin โ€” connect OpenClaw agents to Viber via the Bot API

GitHub

Install

npm install @imaginarium/openclaw-channel-viber

Configuration Example

channels:
  viber:
    accounts:
      - token: "YOUR_VIBER_BOT_TOKEN"
        webhookUrl: "https://your-domain.com/webhooks/viber"
        name: "My Bot"
        avatar: "https://example.com/avatar.jpg"
        allowList:
          - "viber-user-id-1"
          - "viber-user-id-2"

README

# @imaginarium/openclaw-channel-viber

Viber channel plugin for [OpenClaw](https://openclaw.ai) โ€” connect your AI agent to Viber via the Bot API.

## Features

- Send and receive text messages
- Send images, videos, and files
- Inline keyboard buttons
- Webhook signature verification (HMAC-SHA256)
- Allowlist-based access control
- Automatic webhook registration on startup

## Prerequisites

1. Create a Viber Bot at [Viber Partners](https://partners.viber.com/)
2. Get your bot authentication token
3. OpenClaw installed and running

## Installation

```bash
npm install @imaginarium/openclaw-channel-viber
```

## Configuration

Add to your OpenClaw config (`config.yaml` or via `openclaw setup`):

```yaml
channels:
  viber:
    accounts:
      - token: "YOUR_VIBER_BOT_TOKEN"
        webhookUrl: "https://your-domain.com/webhooks/viber"
        name: "My Bot"
        avatar: "https://example.com/avatar.jpg"
        allowList:
          - "viber-user-id-1"
          - "viber-user-id-2"
```

### Config Options

| Option | Required | Description |
|--------|----------|-------------|
| `token` | โœ… | Viber Bot API authentication token |
| `webhookUrl` | โŒ | Public URL for Viber to send webhook events |
| `name` | โŒ | Bot display name in messages |
| `avatar` | โŒ | Bot avatar URL |
| `allowList` | โŒ | Array of Viber user IDs allowed to interact |
| `enabled` | โŒ | Enable/disable the account (default: true) |

## Setup

Run the interactive setup:

```bash
openclaw setup viber
```

This will:
1. Ask for your Viber bot token
2. Validate the token
3. Register the webhook URL
4. Save the configuration

## How It Works

1. **Webhook Registration**: On startup, the plugin registers your webhook URL with the Viber API
2. **Incoming Messages**: Viber sends webhook events to your URL; the plugin verifies the signature and routes messages to OpenClaw
3. **Outgoing Messages**: OpenClaw sends responses via the Viber Bot API
4. **Security**: All webhook requests are verified using HMAC-SHA256 signatures

## Capabilities

| Feature | Supported |
|---------|-----------|
| Text messages | โœ… |
| Media (images, video, files) | โœ… |
| Inline keyboards | โœ… |
| Reactions | โŒ |
| Message editing | โŒ |
| Message deletion | โŒ |
| Threading | โŒ |
| Voice notes | โŒ |

## Security

- **Webhook Verification**: All incoming webhooks are verified using HMAC-SHA256 with your bot token
- **Allowlist**: Restrict bot access to specific Viber user IDs
- **Token Security**: Bot token is marked as sensitive in the config schema

## Development

```bash
git clone https://github.com/imaginarium/openclaw-channel-viber
cd openclaw-channel-viber
npm install
npm run build
```

## License

MIT
channels

Comments

Sign in to leave a comment

Loading comments...