WIP: Twilio
This commit is contained in:
		
							parent
							
								
									63f295a41d
								
							
						
					
					
						commit
						1c0162c434
					
				
					 7 changed files with 159 additions and 13 deletions
				
			
		
							
								
								
									
										11
									
								
								cmd/serve.go
									
										
									
									
									
								
							
							
						
						
									
										11
									
								
								cmd/serve.go
									
										
									
									
									
								
							|  | @ -71,6 +71,9 @@ var flagsServe = append( | |||
| 	altsrc.NewStringFlag(&cli.StringFlag{Name: "smtp-server-listen", Aliases: []string{"smtp_server_listen"}, EnvVars: []string{"NTFY_SMTP_SERVER_LISTEN"}, Usage: "SMTP server address (ip:port) for incoming emails, e.g. :25"}), | ||||
| 	altsrc.NewStringFlag(&cli.StringFlag{Name: "smtp-server-domain", Aliases: []string{"smtp_server_domain"}, EnvVars: []string{"NTFY_SMTP_SERVER_DOMAIN"}, Usage: "SMTP domain for incoming e-mail, e.g. ntfy.sh"}), | ||||
| 	altsrc.NewStringFlag(&cli.StringFlag{Name: "smtp-server-addr-prefix", Aliases: []string{"smtp_server_addr_prefix"}, EnvVars: []string{"NTFY_SMTP_SERVER_ADDR_PREFIX"}, Usage: "SMTP email address prefix for topics to prevent spam (e.g. 'ntfy-')"}), | ||||
| 	altsrc.NewStringFlag(&cli.StringFlag{Name: "twilio-account", Aliases: []string{"twilio_account"}, EnvVars: []string{"NTFY_TWILIO_ACCOUNT"}, Usage: "Twilio account SID, used for SMS and calling, e.g. AC123..."}), | ||||
| 	altsrc.NewStringFlag(&cli.StringFlag{Name: "twilio-auth-token", Aliases: []string{"twilio_auth_token"}, EnvVars: []string{"NTFY_TWILIO_AUTH_TOKEN"}, Usage: "Twilio auth token"}), | ||||
| 	altsrc.NewStringFlag(&cli.StringFlag{Name: "twilio-from-number", Aliases: []string{"twilio_from_number"}, EnvVars: []string{"NTFY_TWILIO_FROM_NUMBER"}, Usage: "Twilio number to use for outgoing calls and text messages"}), | ||||
| 	altsrc.NewIntFlag(&cli.IntFlag{Name: "global-topic-limit", Aliases: []string{"global_topic_limit", "T"}, EnvVars: []string{"NTFY_GLOBAL_TOPIC_LIMIT"}, Value: server.DefaultTotalTopicLimit, Usage: "total number of topics allowed"}), | ||||
| 	altsrc.NewIntFlag(&cli.IntFlag{Name: "visitor-subscription-limit", Aliases: []string{"visitor_subscription_limit"}, EnvVars: []string{"NTFY_VISITOR_SUBSCRIPTION_LIMIT"}, Value: server.DefaultVisitorSubscriptionLimit, Usage: "number of subscriptions per visitor"}), | ||||
| 	altsrc.NewStringFlag(&cli.StringFlag{Name: "visitor-attachment-total-size-limit", Aliases: []string{"visitor_attachment_total_size_limit"}, EnvVars: []string{"NTFY_VISITOR_ATTACHMENT_TOTAL_SIZE_LIMIT"}, Value: "100M", Usage: "total storage limit used for attachments per visitor"}), | ||||
|  | @ -151,6 +154,9 @@ func execServe(c *cli.Context) error { | |||
| 	smtpServerListen := c.String("smtp-server-listen") | ||||
| 	smtpServerDomain := c.String("smtp-server-domain") | ||||
| 	smtpServerAddrPrefix := c.String("smtp-server-addr-prefix") | ||||
| 	twilioAccount := c.String("twilio-account") | ||||
| 	twilioAuthToken := c.String("twilio-auth-token") | ||||
| 	twilioFromNumber := c.String("twilio-from-number") | ||||
| 	totalTopicLimit := c.Int("global-topic-limit") | ||||
| 	visitorSubscriptionLimit := c.Int("visitor-subscription-limit") | ||||
| 	visitorSubscriberRateLimiting := c.Bool("visitor-subscriber-rate-limiting") | ||||
|  | @ -209,6 +215,8 @@ func execServe(c *cli.Context) error { | |||
| 		return errors.New("cannot set enable-signup without also setting enable-login") | ||||
| 	} else if stripeSecretKey != "" && (stripeWebhookKey == "" || baseURL == "") { | ||||
| 		return errors.New("if stripe-secret-key is set, stripe-webhook-key and base-url must also be set") | ||||
| 	} else if twilioAccount != "" && (twilioAuthToken == "" || twilioFromNumber == "" || baseURL == "") { | ||||
| 		return errors.New("if stripe-account is set, twilio-auth-token, twilio-from-number and base-url must also be set") | ||||
| 	} | ||||
| 
 | ||||
| 	// Backwards compatibility | ||||
|  | @ -308,6 +316,9 @@ func execServe(c *cli.Context) error { | |||
| 	conf.SMTPServerListen = smtpServerListen | ||||
| 	conf.SMTPServerDomain = smtpServerDomain | ||||
| 	conf.SMTPServerAddrPrefix = smtpServerAddrPrefix | ||||
| 	conf.TwilioAccount = twilioAccount | ||||
| 	conf.TwilioAuthToken = twilioAuthToken | ||||
| 	conf.TwilioFromNumber = twilioFromNumber | ||||
| 	conf.TotalTopicLimit = totalTopicLimit | ||||
| 	conf.VisitorSubscriptionLimit = visitorSubscriptionLimit | ||||
| 	conf.VisitorAttachmentTotalSizeLimit = visitorAttachmentTotalSizeLimit | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue