Go to file
Alfred Kamanda 666faf3db2
Some checks failed
release / docker (push) Has been cancelled
removed unused code from ssh and http
2025-11-18 15:39:44 +03:00
.github/workflows
args replace the go-vise package and remove logdb 2025-08-19 15:58:07 +03:00
cmd removed unused code from ssh and http 2025-11-18 15:39:44 +03:00
config
debug replace the go-vise package and remove logdb 2025-08-19 15:58:07 +03:00
devtools replace the go-vise package and remove logdb 2025-08-19 15:58:07 +03:00
doc
handlers import the correct go-vise package 2025-11-18 11:10:15 +03:00
internal replace the go-vise package and remove logdb 2025-08-19 15:58:07 +03:00
menutraversal_test Merge branch 'master' into update-go-vise 2025-11-18 10:56:17 +03:00
profile
services updated the size outputs 2025-11-14 10:49:11 +03:00
store Merge branch 'master' into update-go-vise 2025-11-18 10:56:17 +03:00
testutil replace the go-vise package and remove logdb 2025-08-19 15:58:07 +03:00
.dockerignore
.env.example added missing env variables 2025-08-18 16:19:22 +03:00
.gitignore MAJOR REFACTOR: project-tidyup - menuhandler and tests (#90) 2025-07-14 14:42:54 +02:00
Dockerfile update the repository to be used on build and the README 2025-08-20 09:37:15 +03:00
go.mod use the updated sarafu-api package 2025-11-18 15:30:54 +03:00
go.sum use the updated sarafu-api package 2025-11-18 15:30:54 +03:00
LICENSE
README.md update the repository to be used on build and the README 2025-08-20 09:37:15 +03:00

URDT USSD service

img

This is a USSD service built using the go-vise engine.

Prerequisites

1. go-vise

Set up go-vise by cloning the repository into a separate directory. The main upstream repository is hosted at: https://github.com/grassrootseconomics/go-vise

git clone https://github.com/grassrootseconomics/go-vise

Setup

  1. Clone the ussd repo in its own directory

    git clone https://git.grassecon.net/urdt/ussd.git
    
  2. Navigate to the project directory.

  3. Enter the services/registration subfolder:

    cd services/registration
    
  4. make the .bin files from the .vis files

    make VISE_PATH=/var/path/to/your/go-vise -B
    
  5. Return to the project root (cd ../..)

  6. Run the USSD menu

    go run cmd/main.go -session-id=0712345678
    

Running the different binaries

  1. CLI:

    go run cmd/main.go -session-id=0712345678
    
  2. Africastalking:

    go run cmd/africastalking/main.go
    
  3. Async:

    go run cmd/async/main.go
    
  4. Http:

    go run cmd/http/main.go
    

Flags

Below are the supported flags:

  1. -session-id:

    Specifies the session ID. (CLI only).

    Default: 075xx2123.

    Example:

    go run cmd/main.go -session-id=0712345678
    
  2. -d:

    Enables engine debug output.

    Default: false.

    Example:

    go run cmd/main.go -session-id=0712345678 -d
    
  3. -db:

    Specifies the database type.

    Default: gdbm.

    Example:

    go run cmd/main.go -session-id=0712345678 -d -db=postgres
    

    Note: If using -db=postgres, ensure PostgreSQL is running with the connection details specified in your .env file.

License

AGPL-3.0.