Compare commits
	
		
			5 Commits
		
	
	
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| d03fa76657 | |||
| 5223b6fe85 | |||
| 7185d84eac | |||
| d3245fd7c0 | |||
| 1cca2bc8a5 | 
							
								
								
									
										4
									
								
								go.mod
									
									
									
									
									
								
							
							
						
						
									
										4
									
								
								go.mod
									
									
									
									
									
								
							| @@ -1,5 +1,5 @@ | ||||
| module go.balki.me/tglistbot | ||||
|  | ||||
| go 1.20 | ||||
| go 1.23.4 | ||||
|  | ||||
| require go.balki.me/anyhttp v0.2.0 | ||||
| require go.balki.me/anyhttp v0.4.0 | ||||
|   | ||||
							
								
								
									
										4
									
								
								go.sum
									
									
									
									
									
								
							
							
						
						
									
										4
									
								
								go.sum
									
									
									
									
									
								
							| @@ -1,2 +1,2 @@ | ||||
| go.balki.me/anyhttp v0.2.0 h1:W6aGcmjF5CMJvJYtbYCywxnYoErFhFc76vwaqUG5FAQ= | ||||
| go.balki.me/anyhttp v0.2.0/go.mod h1:JhfekOIjgVODoVqUCficjpIgmB3wwlB7jhN0eN2EZ/s= | ||||
| go.balki.me/anyhttp v0.4.0 h1:K639Mc8qCIO5B6ugLJCLQenkwxh9rihEK5JZ/xNfvV0= | ||||
| go.balki.me/anyhttp v0.4.0/go.mod h1:JhfekOIjgVODoVqUCficjpIgmB3wwlB7jhN0eN2EZ/s= | ||||
|   | ||||
							
								
								
									
										30
									
								
								main.go
									
									
									
									
									
								
							
							
						
						
									
										30
									
								
								main.go
									
									
									
									
									
								
							| @@ -23,15 +23,16 @@ import ( | ||||
| var Version string | ||||
| var apiToken string | ||||
|  | ||||
| var usage string = `Telegram List bot | ||||
| var usage = `Telegram List bot | ||||
| Environment variables: | ||||
| TGLB_API_TOKEN (required): See https://core.telegram.org/bots#how-do-i-create-a-bot | ||||
| TGLB_PORT (default 28923): Set numerical port or unix//run/path.sock for unix socket | ||||
| TGLB_DATA_PATH (default .): Directory path where list data is stored | ||||
| TGLB_API_TOKEN (required)       : See https://core.telegram.org/bots#how-do-i-create-a-bot | ||||
| TGLB_ADDR      (default :28923) : See https://pkg.go.dev/go.balki.me/anyhttp#readme-address-syntax | ||||
| TGLB_DATA_PATH (default .)      : Directory path where list data is stored | ||||
| ` | ||||
|  | ||||
| func main() { | ||||
|  | ||||
| 	log.SetFlags(log.Flags() | log.Lshortfile) | ||||
| 	apiToken = os.Getenv("TGLB_API_TOKEN") | ||||
|  | ||||
| 	if apiToken == "" { | ||||
| @@ -40,9 +41,9 @@ func main() { | ||||
| 	} | ||||
|  | ||||
| 	addr := func() string { | ||||
| 		addr := os.Getenv("TGLB_PORT") | ||||
| 		addr := os.Getenv("TGLB_ADDR") | ||||
| 		if addr == "" { | ||||
| 			return "28923" | ||||
| 			return ":28923" | ||||
| 		} | ||||
| 		return addr | ||||
| 	}() | ||||
| @@ -124,6 +125,16 @@ func main() { | ||||
| 		if update.Message != nil && update.Message.Text != "" && update.Message.Text[0] != '/' { | ||||
|  | ||||
| 			chatID := update.Message.Chat.ID | ||||
| 			if len(update.Message.Text) > 60 { | ||||
| 				replyURL := fmt.Sprintf("https://api.telegram.org/bot%s/sendMessage?chat_id=%d&reply_to_message_id=%d&text=ItemTooLong-Max60", apiToken, chatID, update.Message.ID) | ||||
| 				resp, err := http.Get(replyURL) | ||||
| 				if err != nil { | ||||
| 					log.Println(err) | ||||
| 					return | ||||
| 				} | ||||
| 				logBody(resp.Body) | ||||
| 				return | ||||
| 			} | ||||
| 			g, _ := chats.LoadOrStore(chatID, glist.NewGList(chatID)) | ||||
| 			gl := g.(*glist.GList) | ||||
| 			go handleTextAdded(gl, update.Message.Text) | ||||
| @@ -143,7 +154,11 @@ func main() { | ||||
|  | ||||
| 		} | ||||
| 	}) | ||||
| 	log.Panicln(anyhttp.ListenAndServe(addr, nil)) | ||||
|  | ||||
| 	err := anyhttp.ListenAndServe(addr, nil) | ||||
| 	if err != nil { | ||||
| 		log.Panicln(err) | ||||
| 	} | ||||
| } | ||||
|  | ||||
| func handleTextAdded(gl *glist.GList, text string) { | ||||
| @@ -209,6 +224,7 @@ func sendList(gl *glist.GList, method glist.SendMethod) []byte { | ||||
| 		log.Println(err) | ||||
| 		return nil | ||||
| 	} | ||||
| 	log.Println(string(sendMsgReq)) | ||||
| 	resp, err := http.Post(url, "application/json", bytes.NewReader(sendMsgReq)) | ||||
| 	if err != nil { | ||||
| 		log.Println(err) | ||||
|   | ||||
		Reference in New Issue
	
	Block a user