|
EmberZNet API Reference: For the EM35x SoC Platform
EmberZNet <IP_ADDRESS>
For the EFR32 and EM3xx Platforms
|
Functions | |
| EmberStatus | emberNetworkAddressRequest (EmberEUI64 target, bool reportKids, uint8_t childStartIndex) |
| Requests the 16 bit network address of a node whose EUI64 is known. More... | |
| EmberStatus | emberIeeeAddressRequest (EmberNodeId target, bool reportKids, uint8_t childStartIndex, EmberApsOption options) |
| Requests the EUI64 of a node whose 16 bit network address is known. More... | |
| EmberStatus | emberIeeeAddressRequestToTarget (EmberNodeId discoveryNodeId, bool reportKids, uint8_t childStartIndex, EmberApsOption options, EmberNodeId targetNodeIdOfRequest) |
| EmberStatus | emberEnergyScanRequest (EmberNodeId target, uint32_t scanChannels, uint8_t scanDuration, uint16_t scanCount) |
| Requests that an energy scan be performed and its results returned. This request may only be sent by the current network manager and must be unicast, not broadcast. More... | |
| EmberStatus | emberSetNetworkManagerRequest (EmberNodeId networkManager, uint32_t activeChannels) |
| Broadcasts a request to set the identity of the network manager and the active channel mask. The mask is used when scanning for the network after missing a channel update. More... | |
| EmberStatus | emberChannelChangeRequest (uint8_t channel) |
| Broadcasts a request to change the channel. This request may only be sent by the current network manager. A several second delay occurs from receipt of the broadcast to changing the channel to allow time for the broadcast to propagate. More... | |
| EmberStatus | emberSendDeviceAnnouncement (void) |
| Sends a broadcast for a ZDO Device announcement. Normally, it is NOT required to call this as the stack automatically sends a device announcement during joining or rejoining, as per the spec. More... | |
| EmberStatus | emberSendParentAnnouncement (void) |
| Sends a broadcast for a ZDO Parent Announcement. Normally, it is NOT required to call this as the stack automatically sends a Parent Announce when a Zigbee Router/Coordinator reboots, is in a joined or authenticated state, and has at least one device. More... | |
| uint8_t | emberGetLastStackZigDevRequestSequence (void) |
| Provides access to the stack ZDO transaction sequence number for the last request. More... | |
See zigbee-device-stack.h for source code.
| EmberStatus emberChannelChangeRequest | ( | uint8_t | channel | ) |
Broadcasts a request to change the channel. This request may only be sent by the current network manager. A several second delay occurs from receipt of the broadcast to changing the channel to allow time for the broadcast to propagate.
| channel | The channel to change to. |
| EmberStatus emberEnergyScanRequest | ( | EmberNodeId | target, |
| uint32_t | scanChannels, | ||
| uint8_t | scanDuration, | ||
| uint16_t | scanCount | ||
| ) |
Requests that an energy scan be performed and its results returned. This request may only be sent by the current network manager and must be unicast, not broadcast.
| target | The network address of the node to perform the scan. |
| scanChannels | A mask of the channels to be scanned. |
| scanDuration | How long to scan on each channel. Allowed values are 0..5, with the scan times as specified by 802.15.4 (0 = 31 ms, 1 = 46 ms, 2 = 77 ms, 3 = 138 ms, 4 = 261 ms, 5 = 507 ms). |
| scanCount | The number of scans to be performed on each channel (1 .. 8). |
| uint8_t emberGetLastStackZigDevRequestSequence | ( | void | ) |
Provides access to the stack ZDO transaction sequence number for the last request.
| EmberStatus emberIeeeAddressRequest | ( | EmberNodeId | target, |
| bool | reportKids, | ||
| uint8_t | childStartIndex, | ||
| EmberApsOption | options | ||
| ) |
Requests the EUI64 of a node whose 16 bit network address is known.
| target | The network address of the node. |
| reportKids | True to request that the target list their children in the response. |
| childStartIndex | The index of the first child to list in the response. Ignored if reportKids is false. |
| options | The options to use when sending the request. See emberSendUnicast() for a description. |
| EmberStatus emberIeeeAddressRequestToTarget | ( | EmberNodeId | discoveryNodeId, |
| bool | reportKids, | ||
| uint8_t | childStartIndex, | ||
| EmberApsOption | options, | ||
| EmberNodeId | targetNodeIdOfRequest | ||
| ) |
| EmberStatus emberNetworkAddressRequest | ( | EmberEUI64 | target, |
| bool | reportKids, | ||
| uint8_t | childStartIndex | ||
| ) |
Requests the 16 bit network address of a node whose EUI64 is known.
| target | The EUI64 of the node. |
| reportKids | True to request that the target list their children in the response. |
| childStartIndex | The index of the first child to list in the response. Ignored if reportKids is false. |
| EmberStatus emberSendDeviceAnnouncement | ( | void | ) |
Sends a broadcast for a ZDO Device announcement. Normally, it is NOT required to call this as the stack automatically sends a device announcement during joining or rejoining, as per the spec.
May be used to re-send the device announcement.
| EmberStatus emberSendParentAnnouncement | ( | void | ) |
Sends a broadcast for a ZDO Parent Announcement. Normally, it is NOT required to call this as the stack automatically sends a Parent Announce when a Zigbee Router/Coordinator reboots, is in a joined or authenticated state, and has at least one device.
May be used to re-send the parent announcement.
| EmberStatus emberSetNetworkManagerRequest | ( | EmberNodeId | networkManager, |
| uint32_t | activeChannels | ||
| ) |
Broadcasts a request to set the identity of the network manager and the active channel mask. The mask is used when scanning for the network after missing a channel update.
| networkManager | The network address of the network manager. |
| activeChannels | The new active channel mask. |


My Name is Eric and I LOVE coding! This webpage includes a portfolio of my favorite food items and a contact page.
Using only a hoe and a large glass of water, I once single-handedly defended a small village in the Amazon Basin from a
horde of ferocious army ants. (© 2020 Reddit, Inc.)
"I am neither especially clever nor especially gifted. I am only very, very curious." ― Albert Einstein


Alvaro Desantos: And you come here? Sounds like she needs an exterminator.
Michael: Little late for that: they're nailed to her door.
  Or nail it to the their door. Or just dump it on their door step. Whatever method you chose, the message will be clear: that you are willing to kill and that they could be next.
A character's pets are especially at risk of being targeted, especially in horror shows where pets almost never survive and are usually the first victims of the killer. Often combined with Break-In Threat.
Of course, this can also set off the Animal Wrongs Group.
The equivalent when done with a human is Dead Guy on Display (if done for intimidation).
See also Bad People Abuse Animals. Compare Kick the Dog, And Your Little Dog, Too!.
Examples:
- Batman:
- In the lead-up to Batman #400, Ra's Al-Ghul sends Batman a package containing a bat with broken neck; a fairly obvious threat, as Batman puts it.
- In a similar vein, #1 of the post-Rebirth series of Teen Titans, Ra's al Ghul sends Damian Wayne (a.k.a. Robin) a dead robin on his 13th birthday.
- Parodied in Transmetropolitan:
- Spider owns a "maker" produced by a Mafia-owned company and if he tries to throw it away (its A.I. is a drug addict), severed horse heads appear in his bed.

- Wonder Woman (1987): While Artemis is Wonder Woman and Diana is acting as a hero and PI under her own name she rescues a woman from a Stalker with a Crush who had killed the woman's pets and left her creepy messages with their bodies in retaliation for the woman getting engaged.
- Blackway: After he starts stalking Laura, Blackway murders her cat.
- In Blastfighter, Wally and his redneck buddies slit the throat of the fawn Tiger saved and leave it in the front seat of his car.
- In the interviews in Blooded, it is mentioned that the first serious threat Lucas received for his views on hunting was a dead fox dumped on his doorstep.

- In Fair Game, the hunters leave a dead, skinned kangaroo sitting in the driver's seat of Jessica's ute.
- As part of her reign of terror in Fatal Attraction when she goes off the deep end, Alex kills Ellen's pet rabbit and puts it into the Gallaghers' pressure cooker to boil.
- A variation in Gangs of New York when Amsterdam hangs a dead rabbit on a fence in Paradise Square. It's the symbol of his father's old gang, the Dead Rabbits, and both a call to arms for the immigrant community and a message to Bill the Butcher that he's not going to give up.
- In The Godfather, Jack Woltz wakes up with the severed head of his prize horse Khartoum in his bed as proof of what will happen if he doesn't give into Don Corleone's demands.
- In Ratter, Emma returns to her apartment to find her cat Clover dead. While others try to convince her that this could have been an accident or natural causes, Emma is convinced it is the work of her stalker.
- Revenge (2017): Not so much a warning as a perverse practical joke, but Richard wakes up the sleeping Stan by flinging a dead cat on to the windscreen of his car. Stan understandably screams as he awakens to a thump and blood splattered across his windscreen.
- In What Ever Happened to Baby Jane?, Jane begins denying Blanche food, until she serves Blanche's dead pet parakeetand, at a later meal, a dead ratto her on a dinner platter.
- XX: In "Her Only Living Son," the cult nails a dead squirrel to a tree outside Cora's home.
- Four Past Midnight: In the short story Secret Window, Secret Garden Mort's cat is killed with a screwdriver and left as a warning by his Stalker Without a Crush. John Shooter is revealed to be in Mort's head the whole time. Mort killed his own cat. The film adaptation changes it to a dog.
- In Girl with the Dragon Tattoo, Mikael Blomquist bonds with a cat while staying at the Vanger estate. He wakes up one morning to find the villain has killed the cat and left its mutilated remains on his doorstep.
- In one of the most famous scenes of The Godfather, a Hollywood producer wakes up with the head of his prized racehorse in his bed as proof of what will happen if he doesn't give into Don Corleone's demands.
- Harry Potter:
- In Harry Potter and the Chamber of Secrets, the school caretaker's cat is hung up as a warning after the Chamber of Secrets is opened.
- Harry Potter and the Half-Blood Prince two cases, one shown and one implied, both in Pensieve Flashbacks:
- Bob Ogden from the Ministry of Magic visits the Gaunt home and finds a snake nailed to the door. The house is occupied by some decidedly unlovely characters.
- When Dumbledore visits the orphanage where Tom Riddle was raised, the matron discusses an incident in which he was accused of hanging another child's pet rabbit from the rafters after the rabbit's owner annoyed him. The accusations had to be dropped because they couldn't prove that he climbed into the rafters to do it, not realizing he was a wizard.

- In Needful Things, Nettie's dog, Raider, is skewered with a Swiss army knife and left with the note for her to find.
- In 13 Reasons Why, Montgomery De la Cruz leaves a dead rat in Zach's gym bag.

- Badger: In "The Price of a Daughter," a disemboweled badger is dumped in Tom's garden as a warning.
- The Burn Notice episode "Fight or Flight" has a cocktail waitress, Cara, be the only conscious witness to a drug cartel member beating a pizza delivery boy senseless for rear-ending him. The cartel starts intimidating her, including nailing a dead rat to her front door. Fortunately, Cara's boss happens to be Michael Westen's landlord.
- Cannon: In "To Kill a Guinea Pig," mobsters attempting to strong arm a medical researcher into including a particular prisoner in her trials (so he can be killed) kill her pet monkey and hang it from a tree outside her house.
- Community: Played for Laughs in "Introduction to Teaching". Jeff finds Annie crying and she shows him what Professor Hickey gave her: a dead rat pinned to a card with Cut-and-Paste Note reading "You're next". Jeff is shocked, but it turns out this is Annie's Witness Intimidation project and what she is upset about is the grade: an A-.
- CSI: In "Uninvited," the CSI team investigate when an entirely is reported as having been missing for a month. While investigating, they discover blood on the front door step, and eventually learn that the family dog had been killed and dumped on the doorstep.
- CSI: NY: In "Dead Inside," Stella receives a dead rat in the mail: a warning to her that the murder of the 'rat fisherman' should remain an unsolved case.
 Message received.
- The Golden Girls episode "Feelings" has Dorothy harassed by her high school trying to pressure her into passing a failing football star so he can win a big game. At one point, she received a fish wrapped in newspaper and while she makes light of it by quipping to have white wine with it, Sophia is upset by this, believing that they would harm her. This is justified as the latter's from Sicily and knows what's the big deal about this gesture.
- After Monroe (a Blutbad) and Rosalee (a Fuchsbau) get married on Grimm, a Wesen hate group protests their union by nailing the corpse of a fox (the animal Fuchsbau are based on) to her apothecary shop.
- Inspector George Gently: In "Breathe in the Air," a doctor's dog is killed as part of a harassment campaign that ultimately drives her to suicide.
- In Law & Order: Criminal Intent episode "Purgatory" after coming back from his suspension and going undercover to bust some fellow dirty cops, Det. Goren opens up his drawer to find a dead rat inside of it.
- The Librarians (2007): After Frances upsets the local community (yet again), a pig's head is shoved into the library's book return chute.
- Marple: In Endless Night, Ellie discovers a dead bird with a threatening message pinned to it on her doorstep as part of a campaign of harassment aimed at her.

- Midsomer Murders:
- In "Death in Chorus," artist Connor Simpson is shocked when a pig's heart is nailed to his cottage door.

- In "Till Death Do Us Part", the first Victim of the Week is being trolled by someone who is sending her dead animals with ribbons tied around their tongues.
- The Twilight Zone (1985): In "The Hunters", Dr. Klein believes that the mutilated sheep carcass found outside the prehistoric cave was placed there by Jim Hilsen, whose housing development was delayed by the discovery of the cave, in order to intimidate her and the rest of the archaelogical team. However, it turns out that it was killed by the ghosts of the prehistoric hunters depicted on the cave walls.
- Subverted on Veronica Mars. After the bus crash at the start of season two, Keith investigates the wreckage of the bus to find a dead rat taped under one of the seats. Keith and Veronica initially conclude that the rat was a message to someone who was planning to rat out someone else. But later, Keith figures that the purpose of the rat was the stench forcing certain students off the bus to protect them.
- Books of Samuel: Saul cuts an oxen apart and has its dismembered bodies part sent to all the cities of Israel, a warning that the same dismemberment will happen to the livestock of any who do not fight against Nahash the Ammonite. Three hundred thousand soldiers answer the call.
- Queen of Thieves: In Zoe's second season, Dead Rat King leaves a bunch of dead rats strung up under a bridge for her and the heroine to find on their gondola ride.
- Reigning Passions: Midway through Amara's first season, the heroine finds a dead hummingbird in her bed, along with a threatening note. Piama notes that since hummingbirds are considered sacred, whoever left it must have really meant it.
- Echo Rose: Along with a note telling her to stop investigating, Echo also received the skull of an animal, a targeted strike as the sender knew she was an animal-loving Empath.
- The Simpsons:
- The "Guess Who's Coming to Criticize Dinner" episode has food critic Homer gain the ire of the local restaurateurs due to his negative reviews of them. Luigi mentions that he had been sent a horse's head—which he then ate and still gave a bad review to.
- Another episode had a detective mentioning that Homer had been sent a dead fish wrapped in newspaper. Upon unrolling the paper though, it appears that he had already eaten that, as well.


We hope that you're safe. It has been determined based on the information given to us that you're currently in minute danger of contracting the virus. Due to the short supply of the vaccine and efficient distribution mechanics you're eligible for vaccination waitlist. Please dont be reckless and continue to follow social distancing protocols to do your part to fight the pandemic.
Thankyou!


Introduction
In the space of less than 10 years, autonomous cars have gone from a hyper-realistic fantasy to nearly-complete consumer products. In this section we will talk about how this transition happened and the events that occured during this time.
Defence Advanced Research Projects Agency (DARPA) Grand Challenge
2004
In 2004, DARPA held their first Grand Challenge. It offered $1 million for whoever could make a car capable of driving 150 miles through the Mojave Desert the fastest. [1]
None of the competitors made it to the finish line, however it made people realise that self-driving cars were possible.
You can watch the highlights of it here.
2005
The next one was in 2005, where 5 successfully completed the course. The Stanford racing team was in first place with a time of 6 hours and 54 minutes.
In 2010, Google (now a spin-off company called Waymo) announced that it had secretly had employees (some of whome competed in DARPA's challenges) working on making a system for self-driving cars with the goal of launching a commericial vehicle by 2020 [2]. They hoped it would half the number of car accidents each year.
By 2015, they had logged 1 million miles without causing an accident. In 2016, one of their cars was the first from the company to cause an accident. It attempted to avoid sandbags blocking its path while moving forward towards a stoplight. In doing so, it struck the side of a bus.
In addition, Waymo has lobbied for and got legislation passed to make autonomous cars street legal in four states.
Other competitors
By 2013, many car manufacturers, like GM, Ford, Mercedes Benz, Volkswagen, Audi, Nissan, Toyota, MBW and Volvo had begun testing driverless car systems and have been doing so since.
To read about all the major competitors, see our other article here.
Tesla
In October 2014, Tesla announced its first version of AutoPilot, which came equipped with some Model S cars. It was capable of lane control with autonomous steering, braking and speed limit adjustment based on signals image recognition.
The first fatal accident involving a self-driving car was in Florida in May 2016. While a Tesla Model S was in AutoPilot mode, it failed to apply the brakes when a 18-wheel tractor-trailer made a left turn in front of the Tesla at an intersection on a non-controlled access highway.
Tesla ended its partnership with Mobileye, who was in charge of making the vision-on-a-chip system that processes and analyses images to enable vechile and lane detection for Tesla cars, so that they could work on their on radar system by themselves. [3]
Starting in October 2016, all Tesla’s are built with the necessary hardware to allow full self driving capability (SAE Level 5).
Delphi Automative
In April 2015, Delphi Automative became the first company to complete a coast-to-coast journey across the USA with an automated vehicle, travelling from San Francisco to New York under computer control for 99% of the journey. [4]
nuTonomy
In August 2016, Singapore launched the first self-driving car taxi service, provided by nuTonomy (which was bought by Delphi Automative late last year). [5]
General Motors
In January this year, General Motors (GM) - known as one of the leaders in autonomous vehicle technology - announced that it plans to make an autonomous car without a steering wheel or pedals by 2019. You can read more about it here. [6]
Sources- [1] Alex Davies - WIRED - "Inside the races that jump-started the self-driving car"
- [2] Tuan Nguyen - ThoughtCo. - "History of self-driving cars"
- [3] Kirsten Korosec - Fortune - "Mobileye Is Ending Its Relationship With Tesla on Future Self-Driving Car Tech"
- [4] Wikiwand - History of autonomous cars
- [5] Wikiwand - NuTonomy
- [6] Andrew J. Hawkins - The Verge - "GM will make an autonomous car without steering wheel or pedals by 2019"
- Cajunbot picture


Upgrade Guide
Introduction
Upgrading Openfire is almost as easy as installing Openfire from scratch. As part of the upgrade process it is highly recommended to backup your current installation and database. Having backups will let you easily rollback to a previous state and ensure that you have not lost vital information. The rest of the document describes the common steps to perform a successful upgrade.
The new version of Openfire will be installed over the existing version and all settings and data will be retained.
Standard Upgrade
Windows EXE
- Stop Openfire (when using a service, stop it manually).
- Backup the Openfire installation directory. The default is
C:\Program Files\Openfire
- Backup the Openfire database. Note that the embedded database is backed up in step 2.
- Run the installer for the new version of Openfire (note that the installer MUST point to the base installation directory of the previous version).
- Complete the installer process.
- Start Openfire (when using a service, start it manually).
Since 4.1.5 the installer will stop and reinstall the service and then start it again automatically.
Windows EXE (upgrading from x86 to x64 version)
- (fastest option) When running the x64 installer point it to the current installation folder of Openfire (by default
C:\Program files (x86)\Openfire
). If you have Openfire service installed (version prior 4.1.5), stop it first. During the installation it will install/reinstall the service and on the last step you will have to choose whether to run it. - (safest option) When running the x64 installer point it to a new installation folder (by default
C:\Program Files\Openfire
). If you have Openfire service installed (version prior 4.1.5), stop it first. During the installation it will install/reinstall the service. On the last step check not to start the service. Copy the/conf
,/embedded-db
(if using this database),/plugins
,/resources/security
from the old installation folder to the new one. Manually start the services via Services control page.
The upgrade guide has been tested against 4.1.4 and newer versions. It should work for older versions, but the results may be different for very old versions. You won't have to stop the service before the upgrade since the version 4.1.5. It will stop and reinstall it automatically.
RPM - RedHat based unix systems (RHEL, CentOS, Fedora, etc)
- Stop Openfire.
- Backup the Openfire installation directory.
- Backup the Openfire database. Note that the embedded database is backed up in step 2.
- Install the new RPM. Execute
rpm -Uvf openfire-3.3.3-1.i386.rpm
to update your current install - Start Openfire.
Remember that the server can be started in manual or automatic mode. Execute /opt/openfire/bin/openfire.sh
to start in manual mode or execute /etc/init.d/openfire start
to start the server as a service. Execute
/etc/init.d/openfire stop
to stop the server's service.
Things to note
- The new RPM installs Openfire as a service. That means that the server will be started when the OS is started and the server is stopped upon shutdown.
/opt/openfire/bin/openfire
no longer exists. It was a start/stop script generated by install4j. Since we are no longer using install4j, it needed to go. Instead, we now have a more standard linux init script,/etc/init.d/openfire
./etc/sysconfig/openfire
can now be used to 'tweak' things, like paths and such. See the file for more information.- The entire directory tree is owned by daemon now. We ditched the need for a new user and are sticking with a standard unix system account. The RPM will take care of owning everything as you install it.
- Beyond having
/etc/init.d/openfire
to stop and start openfire, it has chkconfig compatible tags in it and is automatically added via the rpm so that openfire should start up as your server starts up. - The RPM will no longer overwrite:
conf/openfire.xml
,resources/security/keystore
orresources/security/truststore
.
Mac OS X DMG
- Stop Openfire.
- Backup the Openfire installation directory. The default is
/usr/local/openfire
. - Backup the Openfire database. Note that the embedded database is backed up in step 2.
- Open the installer for the new version of Openfire.
- Complete the installer process.
ZIP or TAR.GZ
- Stop Openfire.
- Backup the Openfire installation directory. This step is critical because the data will be overwritten with the new .tar.gz/zip install.
- Backup the Openfire database. Note that the embedded database is inside the installation directory and is backed up in step 2.
- Wipe out the contents of the Openfire installation directory (all folders and files).
- Extract the .tar.gz/zip file into the installation directory.
- Copy the
conf
directory from the backup to the installation directory. - Copy the
embedded-db
directory from the backup to the installation directory. - Copy the
enterprise
directory from the backup to the installation directory, if it exists. - Copy the
plugins
directory from the backup to the installation directory except for _plugins/admin_. - Copy modified files located in
resources/security
from the backup to the installation directory. - Start Openfire
Special Upgrade cases
There are some special occasions where some manual intervention is needed while performing the upgrade process. This is usually the case when some mayor refactoring work was done that requires complex upgrade operations. However, this is not a common case in Openfire (e.g. this happened twice since 2003). Below you will find the upgrade steps to follow for these special occasions:


How to create a new Website
- Clone into your repository
- gedit a file called index.html, and put appropriate codes
- Validate code
- gedit a file called main.css, and put appropriate codes for decoration
- Validate code
- Start the development server using python -m SimpleHTTPServer
- Type localhost:8000 to check
- Validate code
- git add/commit/push to save your work in your repository
- Start the production server- sftp username@cmis-hsteacher
- Change the directory of the sftp using cd public_html.
- then, put index.html and main.css separately


Misk Initiatives Center signs 12 deals to develop youth talent
RIYDAH: A Saudi medical team managed to separate Libyan conjoined twins in a complex operation on Thursday at King Abdulaziz Medical City in Riyadh.
Dr. Abdullah Al-Rabeeah said that while the operation was still underway, the twins were lying in separate beds.
The mother of the conjoined twins Ahmed and Mohammed said it was a joy to see they had been separated. “To see Mohammad wrapped separately, I couldn't believe it, my prayers go to the doctor and his team, may their successes continue.”
A video showed the emotional moment when the boys’ father saw them for the first time after the surgery. He broke down in tears before thanking the team of medics
A 35-member surgical team began the operation to separate the twins Ahmed and Mohammed in the morning.
The success rate of the operation, which takes up to 15 hours and is performed through 11 stages, is estimated at 70 percent.
“This case comes from Libya, a country that is enduring big challenges,” Dr. Al-Rabeeah said.
“It is due to our leadership’s initiative that the twins are here, to ease the suffering of the twins and of their parents - one of the humane touches of the Kingdom of Saudi Arabia.”
Dr. Al-Rabeeah said the operation was the 48th to separate twins in the last 30 years and that the cases came from more than 21 countries.


Some time back I have been working with Caper on a project which led me to the discovery of Bare Conductive’s conductive paint. I got very excited at the prospect of being able to do a gentle introduction into the world of electronics though a very inviting medium of making a mess on paper with the tools you already know how to use.
Bare Conductive were one of the sponsors of the Brighton Mini Maker Faire this year, and I briefly spoke to them - they are very nice people. I hope this post doesn’t sound like an advertiorial, but really, I only have positive things to say about possibilities it creates in making and teaching electronics. I’ve seen Bare’s card making kits, and whilst simple and fun to make, they introduce some very basic concepts of electronics with no effort at all.
One of the Robot Card Kits Bare Conductive Make, photo from Bare Conductive
So to try out infecting a large number of people with a making and tinkering bug, I will be running a half-party, half-workshop making Christmas cards with some LEDS in (aptly named Bling My Card - thanks Dean). Guaranteed to put you in a festive mood. It’s on 5th December, from 6pm to 8pm, and tickets are £12 - this covers the cost of the materials, and any profit goes to Rockinghorse. That, and you get the become a part of an experiment which will test how many people I can infect with a new hobby in a single evening.
If you’re not in Brighton or are busy you can make some awesome cards on your own: Bare have prepared a very thorough tutorial explaining everything you need to know (which is very little).
Of course, conductive paint lends itself to so much more than cardmaking, which is what I would like to play with once I get some spare time again. There are folks working on some interesting innovative projects that benefit from the tactile quality of making bendable circuits on paper.
Antonio Gomes made an interface that uses the paint and conductive gloves to control music.
You can see more examples of some cool projects here.
Remember me getting all excited about installing sensors around the Royal Shakespeare Theatre? The commission I have been working on with Caper has been unveiled yesterday.
Alarum is an ambient visualisation of the data showing changes in sound levels and motion around the theatre building.
The data often comes in every twenty to thirty seconds, depending on sensors’ connectivity, so it needs to be analysed to decide which changes in sounds and motion level are meaningful.
Alarum looks at average levels of data it receives. When these suddenly increase, it knows something has happened. If they continue at higher levels, it means activities continue in this part of the theatre. It is interesting to see how these change depending on time of the day, and how they change over the course of days and weeks.
The raw data is available, so you can build something with it yourself. It would be great to see other projects made that look at it in a different way. Alarum’s code is on GitHub under the codename heartbeat, though it’s so messy I am a bit embarassed to be sharing it.
The first raw sensor data being received by Cosm
In September I ran two workshops with year 10 students here in Brighton, as part of Lighthouse’s educational programme for Brighton Digital Festival. We made games in Scratch together. That was my first opportunity to work with people so young, and the difference sin their approach to learning, as opposed to adults I have shared my skills with, were quite interesting. As I am preparing creative coding workshops I’ll be running at Goldsmiths in December, and working on some CodeClub projects, I am having to think a lot about approach to teaching how to code.
A game created by one of the students at Brighton Aldrige Community Academy
With adults, I have focused on showing what’s possible with code, and trying to inspire them enough to make overcoming the first period of learning a bit less of a daunting task. I assumed that as non-technical audience they may see learning programming as very difficult. It’s certainly how I saw it to start with, but I kept at it despite failing to grasp concepts and finding syntax of some of the languages unintuitive. I did so because I knew what awaited me: the power to create something, anything, out of nothing. The only barrier was my willingness to stick it out. I hoped similar approach could work for others.
Kids, on the other hand, did not need to be inspired or encouraged to try something new and tricky. They just did. We were building games using Scratch, which makes learning to code more accessible in many ways. First of all, it’s a visual environment, where it’s easy to snap commands together, nest them or move them around. Secondly, all possible commands are visible, so when you’re stuck it’s easy to peruse them and maybe find something suitable. Thirdly, it has a built in collection of sounds and images that can be used in games or application. It’s a breeze to get started.
In one of the sessions with kids I had a very small group, so I was able to let them do whatever they wanted and help each one of them separately. They all made different games, and I could adapt how I explain things based on their projects. I was there to get them started and guide them when they got stuck, but they honestly needed no encouragement whatsoever. Before I knew it they have explored the possibilities of Scratch beyond what I was able to cover and amazed me with their ingenuity and creativity.
With adult beginners though my primary focus is on encouraging that playful approach. My aim was never to prepare for the glamorous life of a programmer, or to teach a specific language in depth (not that I know any one of them that well), but rather to foster the same kind of hacker mentality that I always found appealing: figuring out how things work, being able to learn anything by poking them and just trying things out. There’s a huge difference between career programming and coding as a hobby and I’m not so interested in the former.
Coding is a creative endeavour. As Zed A. Shaw wrote in “Learn Python the hard way”, “as an intellectual activity programming is the only art form that allows you to create interactive art. You can create projects that other people can play with, and you can talk to them indirectly. No other art form is quite this interactive. Movies flow to the audience in one direction. Paintings do not move. Code goes both ways.”
In school most people got to try drawing or playing instruments.  There is a huge drive now to get kids to do just that, whether it’s to give them skills required by the modern world or whether it’s about teaching creative ways of thinking. CodeClub is one of the initiatives that has the potential to not just show how much this is needed, but provides the solutions. Kids will be okay.
I am interested in the generation that sits between those who had BBC Micros at home and kids of today. It can be prohibitively expensive to just try it out. Decoded was a series of workshops which, judging by the feedback from their attendees, were absolutely brilliant. However, with a price tag of over £500 it’s not something just anyone could do.
It is often said among programmers that all you need to learn is access to the internet, as you can find free books, tutorials and communities to ask questions – it’s all readily available. It’s true that there are many approaches to sharing the knowledge and the likelihood is that every learning style is catered for, but finding good resources and going it alone can be tricky.
Still, there is for example Don’t Fear the Internet, a brilliant series of screencasts explaining HTML & CSS in an approachable manner. There is CodeAcademy which now has courses on several languages and allows users to build their own challenges and exercises. I have to say that I found some of them a little tedious and mechanical, though many beginners find them useful. GOOD magazine has recently launched it’s own web basics course, with prizes for the most adept participants. There are more and more resources, and I think they are becoming easier to come across, but since I look out for these things I may be a little biased.
The most exciting space to watch right now is development of programming tools. Bret Victor wrote an absolutely superb essay on improving the way people learn to code by improving those. He points out that getting beginners to randomly change numbers in short programs and thus figure out how it all works is absurd, and there should be better ways of knowing what the syntax means and how the program is executed step by step. It’s a long piece of writing, but it’s absolutely worth it and I wholeheartedly recommend you read it.
He spoke about it during a presentation he gave at CUSEC 2012, and has shown a prototype of a tool that would make learning programming and creating with programming easier. To him it’s about having a direct connection to your creation, and allowing yourself to discover things through this immediacy.
Having tools like this to show to beginners would be brilliant. Staring at code which you cannot understand can be intimidating in a way that playing with buttons, sliders and dials isn’t. Modern electronic instruments make it easy to just pick them up and start playing with them even if you lack any music knowledge, modern programming tools should do the same.
Apparently over 7000 people have visited Brighton Mini Maker Faire this years, so there’s a chance that if you live in Brighton you were one of them.
I’ve written a post for the ORGZine about what it is and what were my highlights, so I won’t repeat that here, instead I just wanted to thank everyone involved. The amazing makers who came to show their wonderful inventions, all other organisers, our tireless volunteers and of course, the generous speakers who came to share tips on their creative process.
If you’ve missed it, check out the BMMF Flickr group to see some of the projects on display.
Noise level sensor in the Swan Bar
Together with Caper I have also been working on a small art project for the RSC. We’ve been interested in working with the building itself. Visitors tend to come to Stratford-upon-Avon for the evening, enjoy the performance, perhaps some food and drinks, and head back, often on the next day. As well as the audience, there are also people working front of house, behind the bar, not to mention the three different acting troupes working on stage.
We wanted to explore the building as a whole, the total sum of effort and action that makes experiencing the performance possible; some of it behind the scenes. To do that, we wanted to put together an app that would analyse, visualise and display activity in the building as it happens.
But how do you measure activity? You could look at the amount of stuff made, amount of waste generated, or resources used up, but to measure life you have to measure its symptoms, like noise and movement. We wanted to put sensors in the theatre to make the often invisible efforts plain to see. To be able to say: at noon on Wednesdays the wardrobe rooms get very busy; that here is a sudden burst of activity backstage on Thursday morning when the set gets installed; that the bar is actually busiest on Monday nights.
I have prototyped two types of devices: motion and sound sensors. Both use Arduino Ethernet boards to send data to Cosm, which I am using both to make the feeds publicly accessible, and to set up triggers that will communicate with a web app built to analyse and visualise the data. I had thought of making my own Arduino-compatible boards to save money, but there simply wasn’t enough time to make that possible.
Motion sensor
The motion sensor devices are very straightforward: simply plug in an infrared motion detector in to start logging. The time it takes for the sensor to keep sending the signal about the detected movement can be adjusted. I add every positive reading to a counter, and send the total to Cosm every 30 seconds.
Sound sensors initially seemed trickier, though I only needed to measure the levels or determine that they are over a certain threshold. My first approach was to try and use piezos positioned on the floor or frequently used flat areas (such as the bar) to detect surface vibrations. Piezos are sensors that can detect pressure and vibration (and thus sound) and are often used as guitar pickups. I found it very difficult to amplify the piezo signal enough to turn it into a sensitive sensor over a large area though.
This is of course possible. Another member of the local hackspace, Jason Hotchkiss, has built exactly the kind of sensitive piezo sensor that I had been thinking about. He designed and built all the electronics that went into this musical ping pong table. I attempted to recreate Jason’s sensors, though I have used a completely different op-amp and my results didn’t come anywhere close.
Another approach I’ve tried was using an electret microphone with a cheap DIY amplifier I found on Alex Weber’s blog. This time I didn’t have the right transistor, and though I had some that apparently could be a substitute it still got me nowhere: readings were full of noise and their range wasn’t good enough. Though I have a huge range of completely random components lying around it turns out I don’t actually have much useful stuff.
As I waited for the right components to show up in the post, with the deadline fast approaching, I had to explore other options. A basic amplifier isn’t exactly very difficult, and the inability to actually get a working one made was making me very frustrated, but in the end I had to go for the off-the-shelf solution as I had to install the devices the very next day. I used Sparkfun’s electret mic with an amplifier on a breakout board, ready to simply plug in and play. Not only I am embarrassed at my failure to prototype something basic, but also at the fact that I am using components that are probably 8-10x more expensive than strictly necessary.
First sensor readings coming in
But hey, the devices worked and that’s what matters, right? I’ve laser cut some dashing boxes to protect them, ready for the installation in situ. Motion ones were placed near Stage Door and in the Wigs & Wardrobe department, sound ones in the Green Room and in Swan Bar.
Something I didn’t think about when prototyping the devices was giving them some way of communicating with their surroundings, namely reporting that they are connected and everything is fine, or that there is an error of some kind and they would need to be reset. The switch that allows resetting them would also be great to have on the outside of the box.
Another thing that I have only seriously considered while installing the devices was communicating what they do to people working at the theatre. I think I would have appreciated more time spent on location talking to people about the project, especially the fact that these aren’t cameras or recording devices - it’s impossible to know this just by glancing at them. It would have been impossible to speak to the entire 700 strong team though, so we’ve put up notes explaining a little bit about the project and displaying some sample data from Cosm. There must be a better approach to communicating their purpose and how they work though.
The sensors have been collecting data for nearly two weeks now. I’ve built a sample Rails app that is dealing with the interpretation of the readings, which need to be analysed and calibrated before going live.
You can see the data for yourself on Cosm (formerly Pachube). I encourage you to pull it and do something interesting with it. I’d be very interested to see what else it can be used for.


This is sample code for blog post at https://adityatelange.now.sh/posts/2020/10/basic-analytics-on-vercel-hosted-sites/


Product Architect and Interim Product Owner (Identity Domain), August 2019 — Current
Backbase (Amsterdam, Netherlands)
I am currently a Product Architect for Backbase’s Identity product. In this role I help big banking customers accelerate their digital banking transformation journeys by understanding their problems and challenges and coming up with solutions - primarily in the identity, authentication, user- and credential management domains. This requires me to analyse and understand a bank’s current environment, set up and run technical workshops and create executable architectures and documentation on how the Backbase platform will fit into their landscape.
This role requires me to be active during pre- as well as post-sales customer engagements. For pre-sales I have been part of multiple customer workshops and meetings that resulted in high-value contracts for Backbase. Post-sales engagements have resulted in me helping the Backbase delivery teams accelerate the deployment of the Backbase platform for customers.
I am also currently acting as an interim Product Owner for our Device Services squad where I analyse and plan work for a team of 9 developers and testers.
Solutions Architect for Digital Platforms, March 2014 — July 2019
Standard Bank (Johannesburg, South Africa)
I was part of the Solutions Architecture Team for Digital Platforms at Standard Bank — the largest bank in Africa. This role required me to find and implement solutions to complex business and technical problems on a daily basis. I worked with business and engineering to deliver executable architectures for digital products on mobile- and web platforms.
Projects that I had worked on:
Daily tasks included: Understanding and analysing functional and non-functional requirements; developing executable architectures; conceptual-, logical- and physical technical design; software development; prototyping of new technologies and processes; mentoring of junior team members.
Technologies I’ve used in this role: Amazon Web Services (AWS); Microsoft Azure; RedHat OpenShift; Kubernetes; Java; Spring Boot Framework; IBM DB2; Docker; Chef Configuration Management; Atlassian Bamboo; Atlassian Bitbucket; Git; Node.js; JavaScript; Sparx Enterprise Architect.
Senior Software Engineer, October 2012 — February 2014
Entelect Software (Johannesburg, South Africa)
Worked as a consultant at Entelect Software on various projects:
First National Bank (December 2012 — February 2014) — Worked on site at FNB’s Core Banking Solutions (CBS) division.
I was part of the team responsible for rewriting FNB’s entire Smart Devices system. The purpose of this system was to drive the entire order, delivery and tracking processes of FNB’s Smart Devices division.
I was also responsible for designing and developing an in-house workflow system. This workflow system became the basis of most of the new projects being developed at CBS.
Technologies I’ve used in this project: Java EE; JBOSS AS 7; Maven; Hibernate; JAX-WS; CDI; EJB; JPA; JTA; JSF; MS SQL Server 2008; Subversion (SVN).
Momentum Multiply (October 2012 — December 2012) — Designed and developed a back end rewards vouchering system for Momentum Multiply. The system enabled Momentum Multiply’s customers to purchase Woolworths vouchers at a discounted rate based on reward tier levels.
Technologies I’ve used in this project: Java EE; Spring Framework; Maven; Hibernate; JPA; IBM WebSphere Application Server (WAS) 7; IBM DB2; Quartz Scheduler; Subversion (SVN).
Senior Software Developer, July 2010 — September 2012
Dariel Solutions (Randburg, South Africa)
Was contracted to DStv Mobile as a consultant and had two main roles during my stay there:
My first year was spent developing front end mobile client applications for DStv Mobile’s TV streaming feeds. I was in constant contact with the product manager and developed and implemented requirements as required.
My second year I moved to back end .NET C# development. I was one of the core developers working on an online activations website for DStv Mobile’s Drifta and Walka devices. I also worked on services to encrypt and decrypt TV signals and control messages for viewing on mobile devices.
Technologies I’ve used in this role: C#; MS Visual Studio 2010; MS SQL Server; WCF; MVC 3; Java SE; SOAP UI; Java ME for Nokia and Blackberry devices; Java for Android devices; C++ for Samsung Bada and Nokia Qt-compatible devices; C# for Windows Phone 7 devices; Mercurial; MS Team Foundation Server (TFS).
Calypso Java Developer and Team Lead, September 2008 — June 2010
Standard Bank CIB (Johannesburg, South Africa)
Worked my way up to a Java development team lead position of the Calypso Settlement System South Africa change-the-bank team. Business area focus was on South African money markets and cash management.
Tasks that I was responsible for were: Java development; configuration of Calypso; identifying and implementing quality coding processes; assisting project management in the planning process; assisting business analysts with requirements gathering; communicating with users; recruitment of new team members; facilitating communication with the wider project team.
Technologies I’ve used in this role: Java SE; Eclipse; Ant; Maven; CVS; Unix (Solaris); IBM MQ; Oracle SQL; Calypso.
Graduate Trainee, February 2007 — August 2008
Standard Bank CIB (Johannesburg, South Africa; São Paulo, Brazil)
I was accepted into Standard Bank Corporate and Investment Banking’s information technology graduate trainee program. The program took me through different areas within the bank’s IT department. I was also selected as one of the top 3 best performing IT graduates and was awarded the opportunity to go and work in Standard Bank’s São Paulo branch for 3 months.
The different areas I’ve worked in were:
Back Office Calypso Programme — I worked as a Java developer on the Calypso back office settlement system.
Technology Infrastructure Group — I was part of the Microsoft SQL Server team where I developed SQL scripts and did general database management tasks.
Front Office Alchemy Programme — I worked as a Java developer on the Alchemy front office trading system.
São Paulo — One of the two main tasks I’ve had during my stay in Brazil was to develop a simple cash transfer system using Visual Basic Application scripting and Excel.
Notable Achievements:
Tutor and Assistant, 2004 — 2006
University of Johannesburg (Johannesburg, South Africa)
I worked as a tutor and assistant in the Computer Science, Informatics and Mathematics departments.
BSc. Information Technology Honours, 2006
University of Johannesburg (Johannesburg, South Africa)
BSc. Information Technology with Financial Orientation, 2003 — 2005
University of Johannesburg (Johannesburg, South Africa)
High School, 2002
Hoërskool Oosterlig (Boksburg, South Africa)


Boats on Lagos waterways due for inspection December —LASWA
by Agency ReportThe Lagos State Waterways Authority, LASWA, says all boats operating on the state’s waterways are due for inspection in December.
The General Manager of the LASWA, Mr Oluwadamilola Emmanuel, disclosed this in an interview with the News Agency of Nigeria in Lagos on Monday.
Emmanuel said that the authority needed to step up its safety procedure on waterways in line with Governor Babajide Sanwo-Olu’s renewed commitment toward development of water transportation.
“One of the things we do to further enhance safety on waterways is to carry out biannual inspection on boats. Before the end of the year, I mean before Christmas, boat operators are due for inspection.
“As they come, we carry out checks on them, and wherever there are safety issues, we give them a timeline to do it; if they don’t fix it, we will go after them,” the LASWA boss told NAN.
He said that the authority would inspect all boats to see whether they were worthy to use on the waterways or not in order to prevent avoidable water mishaps.
The general manager, who noted that the authority relied a lot of information and feedback from passengers, urged them to always report to the authority any threat to safety while onboard.
He said, “We rely a lot on information. We have passengers feedback form as a feedback mechanism where passengers report to us if they notice anything on boats.
“We also encourage our passengers to speak up and let us know, and we will make sure that appropriate penalties are issued out to any erring boat operator who doesn’t comply with the safety procedure.
“Passengers have the responsibility to be the first line safety agent themselves by ensuring that they wear life jackets.”
(NAN)


WITNESS LIST
County Affairs Committee
October 24, 2012 - 10:00 AM
Interim Charge #1
For:
Adams, Wanda (City of Houston)
Carlton, John (Texas State Association of Fire and Emergency Districts)
Fowler, Daryl (Self; County of DeWitt; County of Karnes; County of Live Oak; County of
McMullen)
Frederick, David (Texans Against Monopolies' Excessive Rates)
Moellenberg, Ron (Travis County Emergency Services Dist. 2)
Perry, Henry (Bastrop Fire Dept)
On:
Boyle, Jim (Texas Ratepayers United)
Brewster, Whitney (TxDMV)
Canales, Jaime (Webb County Commissioners Court)
Curry, Todd (City of Houston, Department of Neighborhoods)
Flores, Jose (Frio County)
Graf, Richard (Frio County, Texas)
Hawken, Anne (Protestants Representative Ratepayer's of Deer Creek Ranch Water Company,
LLC)
Huber, Karen (Travis County Commissioner)
McKee, Scott (TxDMV-MCD Permits)
Schaffer, Michael (Harris County Public Health & Environmental Services)
Williams, Marc (Texas Dept. of Transportation)
Registering, but not testifying:
For:
Nikorak, Forrest (Gillespie County Aqua (An Independent owned utility) Customers)
Underbrink, David (Naismith Engineering, Inc.; Consultant to DeWitt County)
On:
Avery, Cliff (State Association of Fire & Emergency Districts)
Cargile, Elizabeth (Medina County Emergency Svc. District #5)
Downing, Reenann (Pioneer Natural Resources)
Eckstein, Deece (Travis County Commissioners Court)
Fontenot, Patricia (South East Texas Regional Planning Comm.)
Gay, Clifford (Self)
Gee, Charles (Texas Logging Council)
Gonzales, John (Willoey County)
Houston, Scott (Texas Municipal League)
Westfall, Larry ((1)Kerrville So. Community Action Group (2) Hill County Litigation GRP -
Aqua Tx Rate Inc)
Wilson, Don (Texas Commission on Fire Protection)
1
WITNESS LIST
Interim Charge #4
For:
Castle, Danette (Texas Council of Community Centers)
On:
Brieden, John (Brazos Valley Council of Governments)
Bujanda, Miryan (Methodist Healthcare Ministries)
Camacho, Jose E. (Tx. Assn. of Community Health Centers)
Cantu, Ramsey English (City of Eagle Pass, Middle Rio Grand Development Council, Texas
Association of Regional Councils)
Hawkins, John (Texas Hospital Assn.)
Janek, Kyle (Health & Human Services Commission)
Kirsch, Lisa (Health & Human Services Commission)
Registering, but not testifying:
On:
Parks, Michael (Brazos Valley Council of Governments)
Redington, Penny (Texas Association of Regional Councils)
2


Who We Are
Taunt Global is a leader in flexible space, providing pranks to all jokesters right to their door. Our monthly subscription boxes are sent to 38 countries, ready to make your day a little more interesting.Whether it's thinking up new prank ideas or reinventing old ones. We make pranks happen.ccccc
Prank Think Tank
Our teams of pranksters spend countless hours thinking and testing the perfect pranks for you.

Have A Good Laugh
Both you and your friends will have side-splitting fun and create memories neither of you will forget.
We reinvent classic pranks with a twist.
Our reinvented pranks will tickle your funny bone, whether it be the Whoopie Cushion Stink Bomb or the Finger Fly Trap. You're guaranteed to have a fantastic time that you will share with your friends.
We source pranks from around the world.
The Taunt Global team of pranksters research pranks from around the globe to share laughter they sourced in every language. Giggle with people from Brazil, Nepal, Australia, and many more countries. Maybe you'll be sent a prank from your favorite place.
Because sometimes you just gotta get 'em.
Subscribing to Taunt Global will get you the freshest, most interesting, hand-picked pranks sent straight to you. Surprise and share with your family and friends because everyone deserves a good laugh.


Class SchemaDetail
The details of a schema
Inheritance
Inherited Members
Namespace: System.Dynamic.ExpandoObject
Syntax
public class SchemaDetail
Properties
Aggregations
An optional list of aggregations to show grouped list item documents. When aggregations are defined for a List,
the UI uses such information to show the available filters and grouped results.
Declaration
public ICollection<AggregatorBase> Aggregations { get; set; }
Property Value
|
System.Collections.Generic.ICollection<AggregatorBase>
|
Audit
Audit information.
Declaration
public UserAuditDetail Audit { get; set; }
Property Value
|
UserAuditDetail
|
Dependencies
Declaration
public ICollection<SchemaDetail> Dependencies { get; }
Property Value
|
ICollection<SchemaDetail>
|
DescendantSchemaIds
The complete list of all descendant schema IDs.
Declaration
public ICollection<string> DescendantSchemaIds { get; set; }
Property Value
|
System.Collections.Generic.ICollection<System.String>
|
Descriptions
Language specific schema descriptions.
Declaration
public TranslatedStringDictionary Descriptions { get; set; }
Property Value
|
TranslatedStringDictionary
|
DisplayPatterns
Language specific DotLiquid templates. These templates will be resolved into display values in content documents and/or list items.
Declaration
public ICollection<DisplayPattern> DisplayPatterns { get; set; }
Property Value
|
System.Collections.Generic.ICollection<DisplayPattern>
|
Fields
The schema fields.
Declaration
public ICollection<FieldBase> Fields { get; set; }
Property Value
|
System.Collections.Generic.ICollection<FieldBase>
|
FieldsOverwrite
A list of schema fields overwrite information. It is used to overwrite the field configuration coming from the parent schema.
Only a subset of properties of a FieldSingleTagbox and FieldMultiTagbox can be be overwritten. All other properties and fields cannot.
Declaration
public ICollection<FieldOverwriteBase> FieldsOverwrite { get; set; }
Property Value
|
System.Collections.Generic.ICollection<FieldOverwriteBase>
|
Id
The schema ID. It is unique throughout the whole customer setup.
Declaration
public string Id { get; set; }
Property Value
|
System.String
|
LayerSchemaIds
An optional list of schemas' IDs with type layer. For a Content schema it stores the layers that can be assigned to a content.
Declaration
public ICollection<string> LayerSchemaIds { get; set; }
Property Value
|
System.Collections.Generic.ICollection<System.String>
|
MetadataProtection
Metadata protection options.
Declaration
public MetadataProtection MetadataProtection { get; set; }
Property Value
|
MetadataProtection
|
Names
Language specific schema names.
Declaration
public TranslatedStringDictionary Names { get; set; }
Property Value
|
TranslatedStringDictionary
|
OwnerTokenId
The owner token ID. Defines the schema owner.
Declaration
public string OwnerTokenId { get; set; }
Property Value
|
System.String
|
ParentSchemaId
The parent schema ID.
Declaration
public string ParentSchemaId { get; set; }
Property Value
|
System.String
|
ReferencedInContentSchemaIds
If the schema if of type Layer, the list contains the schemas with type Content
that reference the layer.
Declaration
public ICollection<string> ReferencedInContentSchemaIds { get; set; }
Property Value
|
System.Collections.Generic.ICollection<System.String>
|
SchemaNamespace
System generated schema namespace. It contains the full schema hierarchy up to the root schema (i.e. [RootSchemaId].[ParentSchemaId].[SchemaId]).
Declaration
public string SchemaNamespace { get; set; }
Property Value
|
System.String
|
SchemaPermissionSetIds
An optional list of schema permission set IDs which control schema permissions.
Declaration
public ICollection<string> SchemaPermissionSetIds { get; set; }
Property Value
|
System.Collections.Generic.ICollection<System.String>
|
SearchFieldCount
The number of fields generated by the schema in the search index for filtering, searching and sorting.
Declaration
public SearchFieldCount SearchFieldCount { get; set; }
Property Value
|
SearchFieldCount
|
Sort
Sorts content documents and/or list items. In order for the sorting to work properly, the Sortable property of the related field
must be set to true. Multiple sorting is supported: they are applied in the specified order.
Declaration
public ICollection<SortInfo> Sort { get; set; }
Property Value
|
System.Collections.Generic.ICollection<SortInfo>
|
System
Identifies a system provided schema. A system schema cannot be created, updated or deleted.
Declaration
public bool System { get; set; }
Property Value
|
System.Boolean
|
Types
List of schema types. Currently only one schema type can be assigned to this list, and it cannot be modified once the schema is created.
Declaration
public ICollection<SchemaType> Types { get; set; }
Property Value
|
System.Collections.Generic.ICollection<SchemaType>
|
ViewForAll
Defines a schema as viewable by everyone. Everyone with ManageSchema user permission is able to see the schema.
Declaration
public bool ViewForAll { get; set; }
Property Value
|
System.Boolean
|
Methods
FromJson(String)
Declaration
public static SchemaDetail FromJson(string data)
Parameters
|
System.String
data
|
Returns
|
SchemaDetail
|
ToJson()
Declaration
public string ToJson()
Returns
|
System.String
|