Class: OxfordFaceApi::FaceList

Inherits:
Object
  • Object
show all
Defined in:
lib/oxford/face/api.rb

Instance Method Summary collapse

Constructor Details

#initializeFaceList



83
84
85
86
# File 'lib/oxford/face/api.rb', line 83

def initialize
  raise if OxfordFaceApi.API_KEY.empty?
  @client = HttpClient.new(OxfordFaceApi.API_KEY)
end

Instance Method Details

#add_face(face_list_id, url, user_data = "", target_face = "") ⇒ Object

Add a Face to a Face List POST api.projectoxford.ai/face/v1.0/facelists/faceListId/persistedFaces[&targetFace]



90
91
92
93
94
95
# File 'lib/oxford/face/api.rb', line 90

def add_face(face_list_id, url, user_data = "", target_face = "")
  params = {
  url: url
  }
  @client.post("/facelists/#{face_list_id}/persistedFaces?userData=#{user_data}&targetFace=#{target_face}", params)
end

#allObject



129
130
131
# File 'lib/oxford/face/api.rb', line 129

def all
  @client.get("/facelists")
end

#create(face_list_id, name, user_data = "") ⇒ Object

Create a Face List PUT api.projectoxford.ai/face/v1.0/facelists/faceListId



99
100
101
102
103
104
105
# File 'lib/oxford/face/api.rb', line 99

def create(face_list_id, name, user_data = "")
  params = {
  name: name,
  userData: user_data
  }
  @client.put("/facelists/#{face_list_id}", params)
end

#delete(face_list_id) ⇒ Object

FIXME Delete a Face List DELETE api.projectoxford.ai/face/v1.0/facelists/faceListId



117
118
119
# File 'lib/oxford/face/api.rb', line 117

def delete(face_list_id)
  @client.delete("/facelists/#{face_list_id}")
end

#delete_face(face_list_id, face_id) ⇒ Object

FIXME Delete a Face from a Face List DELETE api.projectoxford.ai/face/v1.0/facelists/faceListId/persistedFaces/persistedFaceId



110
111
112
# File 'lib/oxford/face/api.rb', line 110

def delete_face(face_list_id, face_id)
  @client.delete("/facelists/#{face_list_id}/persistedFaces/#{face_id}")
end

#faces(face_list_id) ⇒ Object

Get a Face List GET api.projectoxford.ai/face/v1.0/facelists/faceListId



123
124
125
# File 'lib/oxford/face/api.rb', line 123

def faces(face_list_id)
  @client.get("/facelists/#{face_list_id}")
end

#update(face_list_id, name, user_data) ⇒ Object

Update a Face List PATCH api.projectoxford.ai/face/v1.0/facelists/faceListId



135
136
137
138
139
140
141
# File 'lib/oxford/face/api.rb', line 135

def update(face_list_id, name, user_data)
  params = {
  name: name,
  userData: user_data
  }
  @client.patch("/facelists/#{face_list_id}", params)
end