config.dhall.sample

  1let ListenOn = < Inet: { interface: Text, port: Natural } | Unix: Text >
  2in
  3{
  4	component = {
  5		jid = "component.localhost",
  6		secret = "secret"
  7	},
  8	server = {
  9		host = "localhost",
 10		port = 5347
 11	},
 12	sgx = "component2.localhost",
 13	web = ListenOn.Inet { interface = "::1", port = env:PORT ? 8080 },
 14	web_root = "https://example.com",
 15	ogm_path = "/var/www/media.example.com",
 16	ogm_web_root = "https://media.example.com",
 17	sgx_creds = [
 18		{ mapKey = "component-other.localhost", mapValue = { account = "", username = "", password = "" } }
 19	],
 20	creds = {
 21		account = "00000",
 22		client_id = "oauth client id",
 23		client_secret = "oauth client secret",
 24		username = "dashboard user",
 25		password = "dashboard password"
 26	},
 27	web_register = {
 28		to = "cheogram",
 29		from = "jmp-register@localhost"
 30	},
 31	bandwidth_site = "",
 32	bandwidth_peer = "",
 33	braintree = {
 34		environment = "sandbox",
 35		merchant_id = "",
 36		public_key = "",
 37		private_key = "",
 38		merchant_accounts = {
 39			USD = "",
 40			CAD = ""
 41		}
 42	},
 43	xep0157 = [
 44		{ var = "support-addresses", value = "xmpp:+14169938000@cheogram.com", label = "Support" }
 45	],
 46	sip = {
 47		realm = "",
 48		app = ""
 49	},
 50	notify_admin = "muc@example.com",
 51	sip_host = "sip.jmp.chat",
 52	plans = [
 53		{
 54			name = "plan_name",
 55			currency = < CAD | USD >.USD,
 56			monthly_price = 29900,
 57			minutes = <
 58				unlimited |
 59				limited: { included: Natural, price: Natural }
 60			>.limited { included = 120, price = 87 },
 61			messages = <
 62				unlimited |
 63				limited: { included: Natural, price: Natural }
 64			>.unlimited,
 65			allow_register = True,
 66			subaccount_discount = 0
 67		}
 68	],
 69	sims = {
 70		sim = [
 71			{ mapKey = <CAD|USD>.CAD, mapValue = { price = 1, plan = "$1 / GB + $1 / year" } }
 72		],
 73		esim = [
 74			{ mapKey = <CAD|USD>.CAD, mapValue = { price = 1, plan = "$1 / GB + $1 / year" } }
 75		]
 76	},
 77	electrum = {
 78		rpc_uri = "",
 79		rpc_username = "",
 80		rpc_password = "",
 81		currency = ""
 82	},
 83	electrum_bch = {
 84		rpc_uri = "",
 85		rpc_username = "",
 86		rpc_password = "",
 87		currency = ""
 88	},
 89	oxr_app_id = "",
 90	activation_amount = 15,
 91	activation_amount_accept = 15,
 92	credit_card_url = \(jid: Text) -> \(customer_id: Text) ->
 93		"https://pay.jmp.chat/${jid}/credit_cards?customer_id=${customer_id}",
 94	electrum_notify_url = \(address: Text) -> \(customer_id: Text) -> \(currency: Text) ->
 95		"https://pay.jmp.chat/electrum_notify?address=${address}&customer_id=${customer_id}&currency=${currency}",
 96	adr = "",
 97	interac = "",
 98	payable = "",
 99	notify_from = "+15551234567@example.net",
100	admins = ["test\\40example.com@example.net"],
101	direct_targets = toMap {
102		`+15551234567` = "support@example.com"
103	},
104	direct_sources = toMap {
105		`support@example.com` = "+15551234567"
106	},
107	keep_area_codes = [{ area_code = "555", premium_price = Some 10 }],
108	keep_area_codes_in = { account = "", site_id = "", sip_peer_id = "" },
109	snikket_hosting_api = "",
110	onboarding_domain = "",
111	rev_ai_token = "",
112	upstream_domain = "example.net",
113	approved_domains = toMap { `example.com` = Some "customer_id" },
114	parented_domains = toMap { `example.com` = { customer_id = "customer_id", plan_name = "usd" } },
115	offer_codes = toMap { someone = "xmpp:thing" },
116	keepgo = Some { api_key = "", access_token = "" },
117	simpleswap_api_key = "",
118	reachability_senders = [ "+14445556666" ],
119	support_link = \(customer_jid: Text) ->
120		"http://localhost:3002/app/accounts/2/contacts/custom_attributes/jid/${customer_jid}",
121	public_onboarding_url = "xmpp:example.com?register",
122	churnbuster = {
123		api_key = "",
124		account_id = ""
125	},
126	bulk_order_tokens = toMap { sometoken = { customer_id = "somecustomer", peer_id = "" } }
127}