Browse Source

SendFile can now send file to specific device

Piotr Czajkowski 3 years ago
parent
commit
2d0b1bdd4f
3 changed files with 6 additions and 4 deletions
  1. 3 2
      bullet.go
  2. 2 2
      bullet_test.go
  3. 1 0
      fileUpload.go

+ 3 - 2
bullet.go

@@ -165,8 +165,8 @@ func (b Bullet) uploadFile(path string) (*fileUpload, error) {
 	return uploadResponse, nil
 }
 
-//SendFile sends file push with given title, text and file
-func (b Bullet) SendFile(title, text, file string) error {
+//SendFile sends file push with given title, text and file, use empty string as deviceID to send to all
+func (b Bullet) SendFile(title, text, file, deviceID string) error {
 	uploadResult, errUpload := b.uploadFile(file)
 	if errUpload != nil {
 		return errUpload
@@ -179,6 +179,7 @@ func (b Bullet) SendFile(title, text, file string) error {
 	}
 	uploadResult.Body = text
 	uploadResult.Type = "file"
+	uploadResult.DeviceID = deviceID
 
 	err := b.send(uploadResult)
 	return err

+ 2 - 2
bullet_test.go

@@ -108,7 +108,7 @@ func TestSendFile(t *testing.T) {
 
 	b := Bullet{token: "", baseURL: server.URL}
 
-	err = b.SendFile("test", "test", "./README.md")
+	err = b.SendFile("test", "test", "./README.md", "")
 	if err != nil {
 		t.Error(err)
 	}
@@ -121,7 +121,7 @@ func TestSendFileFail(t *testing.T) {
 
 	b := Bullet{token: "", baseURL: server.URL}
 
-	err := b.SendFile("test", "test", "./README.md")
+	err := b.SendFile("test", "test", "./README.md", "")
 	if err == nil {
 		t.Error("There should be error")
 	}

+ 1 - 0
fileUpload.go

@@ -16,6 +16,7 @@ type fileUpload struct {
 	Body      string `json:"body"`
 	FileUrl   string `json:"file_url"`
 	UploadUrl string `json:"upload_url"`
+	DeviceID  string `json:"device_iden"`
 }
 
 func newFileUpload(filename, fileType string) fileUpload {